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
}

PickSingleFileAsync 完成后,file获取选取的文件作为 StorageFile。

在示例中, openPicker 包含 FileOpenPicker 对象。 若要了解有关使用文件选取器的详细信息,请参阅 使用选取器打开文件和文件夹

此外, fileToken 获取可用于从 FutureAccessList 检索文件的标识符。 若要详细了解如何存储文件和文件夹以便以后再次访问它们,请参阅 FutureAccessListMostRecentlyUsedList跟踪最近使用的文件和文件夹

注解

通常,访问 StorageFile 对象是异步方法和/或函数调用的结果。 例如,两个静态方法 GetFileFromPathAsyncGetFileFromApplicationUriAsync 都返回一个代表指定文件的 StorageFile。

此外,每当调用文件选取器以允许用户选取文件 (或) 文件选取器会将文件作为 StorageFile 返回。

注意

StorageFile 对象不能表示“.lnk”、“.url”或“.wsh”文件类型的文件。

版本历史记录

Windows 版本 SDK 版本 已添加值
2004 19041 GetFileFromPathForUserAsync

属性

Attributes

获取文件的属性。

ContentType

获取文件内容的 MIME 类型。

DateCreated

获取创建当前文件的日期和时间。

DisplayName

获取文件的用户友好名称。

DisplayType

获取文件类型的用户友好说明。

FileType

获取文件类型 (文件扩展名) 。

FolderRelativeId

获取文件的标识符。 此 ID 对于包含文件的查询结果或 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) 。

适用于

另请参阅