Поделиться через


StorageFile Класс

Определение

Представляет файл. Предоставляет сведения о файле и его содержимом, а также способы управления ими.

public ref class StorageFile sealed : IStorageFile, IStorageFile2, IStorageFilePropertiesWithAvailability, IStorageItem2, IStorageItemProperties2, IStorageItemPropertiesWithProvider
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class StorageFile final : IStorageFile, IStorageFile2, IStorageFilePropertiesWithAvailability, IStorageItem2, IStorageItemProperties2, IStorageItemPropertiesWithProvider
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public sealed class StorageFile : IStorageFile, IStorageFile2, IStorageFilePropertiesWithAvailability, IStorageItem2, IStorageItemProperties2, IStorageItemPropertiesWithProvider
Public NotInheritable Class StorageFile
Implements IStorageFile, IStorageFile2, IStorageFilePropertiesWithAvailability, IStorageItem2, IStorageItemProperties2, IStorageItemPropertiesWithProvider
Наследование
Object Platform::Object IInspectable StorageFile
Атрибуты
Реализации

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)
Возможности приложения
documentsLibrary musicLibrary picturesLibrary videosLibrary

Примеры

В этом примере показано, как вызвать средство выбора файлов с помощью FileOpenPicker.PickSingleFileAsync для записи и обработки файла, выбранного пользователями.

var openPicker = new FileOpenPicker();
StorageFile file = await openPicker.PickSingleFileAsync();
// Process picked file
if (file != null)
{
    // Store file for future access
    Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.Add(file);
}
else
{
    // The user didn't pick a file
}

После завершения filePickSingleFileAsync получает выбранный файл как StorageFile.

В примере openPicker содержит объект FileOpenPicker . Дополнительные сведения об использовании средства выбора файлов см. в статье Открытие файлов и папок с помощью средства выбора.

Кроме того, получает идентификатор, fileToken который можно использовать для получения файла из FutureAccessList. Дополнительные сведения о хранении файлов и папок, чтобы получить к ним доступ позже, см. в разделах FutureAccessList, MostRecentlyUsedList и Отслеживание недавно использовавшихся файлов и папок.

Комментарии

Как правило, доступ к объектам StorageFile выполняется в результате асинхронных вызовов методов и (или) функций. Например, оба статических метода GetFileFromPathAsync и GetFileFromApplicationUriAsync возвращают объект StorageFile, представляющий указанный файл.

Кроме того, всякий раз, когда вы вызываете средство выбора файлов, чтобы позволить пользователю выбрать файл (или файлы), средство выбора файлов возвращает файл как StorageFile.

Примечание

Объекты StorageFile не могут представлять файлы типов файлов .lnk", .url или .wsh".

Журнал версий

Версия Windows Версия пакета SDK Добавленная стоимость
2004 19041 GetFileFromPathForUserAsync

Свойства

Attributes

Возвращает атрибуты файла.

ContentType

Возвращает тип MIME содержимого файла.

DateCreated

Возвращает дату и время создания текущего файла.

DisplayName

Возвращает понятное имя файла.

DisplayType

Возвращает понятное описание типа файла.

FileType

Возвращает тип (расширение имени файла) файла.

FolderRelativeId

Возвращает идентификатор файла. Этот идентификатор уникален для результата запроса или StorageFolder , содержащего файл, и может использоваться для различения элементов с одинаковым именем.

IsAvailable

Указывает, является ли файл локальным, кэширован локально или может быть скачан.

Name

Возвращает имя файла, включая расширение имени файла.

Path

Возвращает полный системный путь к текущему файлу, если файл имеет путь.

Properties

Возвращает объект , предоставляющий доступ к свойствам файла, связанным с содержимым.

Provider

Возвращает объект StorageProvider , содержащий сведения о службе, в котором хранится текущий файл.

Методы

CopyAndReplaceAsync(IStorageFile)

Заменяет указанный файл копией текущего файла.

CopyAsync(IStorageFolder)

Создает копию файла в указанной папке.

CopyAsync(IStorageFolder, String)

Создает копию файла в указанной папке и переименовывает копию.

CopyAsync(IStorageFolder, String, NameCollisionOption)

Создает копию файла в указанной папке и переименовывает копию. Этот метод также указывает, что делать, если файл с таким именем уже существует в конечной папке.

CreateStreamedFileAsync(String, StreamedFileDataRequestedHandler, IRandomAccessStreamReference)

Создает StorageFile для представления указанного потока данных. Этот метод позволяет приложению создавать данные по запросу, указывая функцию, вызываемую при первом доступе к Файлу StorageFile , представляющего поток.

CreateStreamedFileFromUriAsync(String, Uri, IRandomAccessStreamReference)

Создает StorageFile для представления потока данных из указанного ресурса универсального кода ресурса (URI). Этот метод позволяет приложению скачивать данные по запросу при первом обращении к StorageFile , представляющего поток.

DeleteAsync()

Удаляет текущий файл.

DeleteAsync(StorageDeleteOption)

Удаляет текущий файл, при необходимости удаляя элемент без возможности восстановления.

GetBasicPropertiesAsync()

Возвращает основные свойства текущего файла.

GetFileFromApplicationUriAsync(Uri)

Возвращает объект StorageFile для представления указанного ресурса приложения универсального кода ресурса (URI). Примеры URI см. в статье Загрузка изображений и ресурсов, адаптированных для масштабирования, темы, высокой контрастности и т. д.

GetFileFromPathAsync(String)

Возвращает объект StorageFile , представляющий файл по указанному пути.

GetFileFromPathForUserAsync(User, String)

Возвращает объект StorageFile на основе абсолютного пути в файловой системе для данного пользователя.

GetParentAsync()

Возвращает родительскую папку текущего файла.

GetScaledImageAsThumbnailAsync(ThumbnailMode)

Получает масштабированное изображение в виде эскиза, определяемого назначением эскиза.

GetScaledImageAsThumbnailAsync(ThumbnailMode, UInt32)

Получает масштабированное изображение в виде эскиза, определяемое назначением эскиза и запрошенным размером.

GetScaledImageAsThumbnailAsync(ThumbnailMode, UInt32, ThumbnailOptions)

Получает масштабированное изображение в виде эскиза, определяемое назначением эскиза, запрошенным размером и заданными параметрами.

GetThumbnailAsync(ThumbnailMode)

Извлекает скорректированное эскизное изображение для файла, определяемое назначением эскиза.

GetThumbnailAsync(ThumbnailMode, UInt32)

Извлекает скорректированное изображение эскиза для файла, определяемое назначением эскиза и запрошенным размером.

GetThumbnailAsync(ThumbnailMode, UInt32, ThumbnailOptions)

Извлекает скорректированное эскизное изображение для файла, определяемое назначением эскиза, запрошенным размером и указанными параметрами.

IsEqual(IStorageItem)

Указывает, равен ли текущий файл указанному файлу.

IsOfType(StorageItemTypes)

Определяет, соответствует ли текущий файл StorageFile указанному значению StorageItemTypes .

MoveAndReplaceAsync(IStorageFile)

Перемещает текущий файл в расположение указанного файла и заменяет указанный файл в этом расположении.

MoveAsync(IStorageFolder)

Перемещает текущий файл в указанную папку.

MoveAsync(IStorageFolder, String)

Перемещает текущий файл в указанную папку и переименовывает файл в соответствии с нужным именем.

MoveAsync(IStorageFolder, String, NameCollisionOption)

Перемещает текущий файл в указанную папку и переименовывает файл в соответствии с нужным именем. Этот метод также указывает, что делать, если файл с таким именем уже существует в указанной папке.

OpenAsync(FileAccessMode)

Открывает поток произвольного доступа с указанными параметрами для указанного файла.

OpenAsync(FileAccessMode, StorageOpenOptions)

Открывает поток произвольного доступа с указанными параметрами для указанного файла.

OpenReadAsync()

Открывает поток произвольного доступа к текущему файлу для чтения содержимого файла.

OpenSequentialReadAsync()

Открывает поток последовательного доступа к текущему файлу для чтения содержимого файла.

OpenTransactedWriteAsync()

Открывает поток произвольного доступа к файлу, который можно использовать для операций записи транзакций.

OpenTransactedWriteAsync(StorageOpenOptions)

Открывает поток произвольного доступа к файлу, который можно использовать для операций записи транзакций с указанными параметрами.

RenameAsync(String)

Переименовывает текущий файл.

RenameAsync(String, NameCollisionOption)

Переименовывает текущий файл. Этот метод также указывает, что делать, если существующий элемент в расположении текущего файла имеет то же имя.

ReplaceWithStreamedFileAsync(IStorageFile, StreamedFileDataRequestedHandler, IRandomAccessStreamReference)

Заменяет содержимое файла, на который ссылается указанный объект IStorageFile , новым потоком данных. Этот метод позволяет приложению создавать данные по запросу, указывая функцию, вызываемую при первом доступе к Файлу StorageFile , представляющего поток.

ReplaceWithStreamedFileFromUriAsync(IStorageFile, Uri, IRandomAccessStreamReference)

Заменяет содержимое файла, на который ссылается указанный объект IStorageFile , новым потоком данных указанного универсального идентификатора ресурса (URI). Этот метод позволяет приложению скачивать данные по запросу при первом обращении к StorageFile , представляющего поток.

Доступ к потоку данных осуществляется через возвращаемый файл StorageFile , и данные скачиваются по запросу при первом обращении к StorageFile .

Заменяет объект IStorageFile , представляющий указанный файл, новым объектом StorageFile , предоставляющим поток указанного универсального кода ресурса (URI).

Применяется к

См. также раздел