StorageFile Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa un archivo. Proporciona información sobre el archivo y su contenido, y formas de manipularlos.
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
- Herencia
- Atributos
- Implementaciones
Requisitos de Windows
| Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0)
|
| API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
|
| Características de aplicaciones |
documentsLibrary
musicLibrary
picturesLibrary
videosLibrary
|
Ejemplos
En este ejemplo se muestra cómo llamar a un selector de archivos mediante FileOpenPicker.PickSingleFileAsync para capturar y procesar un archivo que los usuarios seleccionan.
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
}
Una vez completado PickSingleFileAsync , file obtiene el archivo seleccionado como storageFile.
En el ejemplo, openPicker contiene un objeto FileOpenPicker . Para obtener más información sobre el uso del selector de archivos, consulte Abrir archivos y carpetas con un selector.
Además, fileToken obtiene un identificador que puede usar para recuperar el archivo de FutureAccessList. Para obtener más información sobre cómo almacenar archivos y carpetas para que pueda acceder a ellos más adelante, consulte FutureAccessList, MostRecentlyUsedList y Seguimiento de archivos y carpetas usados recientemente.
Comentarios
Normalmente, se accede a los objetos StorageFile como resultado de las llamadas de método asincrónico o función. Por ejemplo, ambos métodos estáticos GetFileFromPathAsync y GetFileFromApplicationUriAsync devuelven un StorageFile que representa el archivo especificado.
Además, cada vez que llame a un selector de archivos para permitir al usuario elegir un archivo (o archivos), el selector de archivos devolverá el archivo como storageFile.
Nota:
Los objetos StorageFile no pueden representar archivos que sean tipos de archivo ".lnk", ".url" o ".wsh".
Historial de versiones
| Versión de Windows | Versión del SDK | Valor agregado |
|---|---|---|
| 2004 | 19041 | GetFileFromPathForUserAsync |
Propiedades
| Attributes |
Obtiene los atributos de un archivo. |
| ContentType |
Obtiene el tipo MIME del contenido del archivo. |
| DateCreated |
Obtiene la fecha y hora en que se creó el archivo actual. |
| DisplayName |
Obtiene un nombre descriptivo para el archivo. |
| DisplayType |
Obtiene una descripción fácil de usar del tipo del archivo. |
| FileType |
Obtiene el tipo (extensión de nombre de archivo) del archivo. |
| FolderRelativeId |
Obtiene un identificador para el archivo. Este identificador es único para el resultado de la consulta o StorageFolder que contiene el archivo y se puede usar para distinguir entre elementos que tienen el mismo nombre. |
| IsAvailable |
Indica si el archivo es local, se almacena en caché localmente o se puede descargar. |
| Name |
Obtiene el nombre del archivo, incluida la extensión de nombre de archivo. |
| Path |
Obtiene la ruta de acceso completa del sistema de archivos del archivo actual, si el archivo tiene una ruta de acceso. |
| Properties |
Obtiene un objeto que proporciona acceso a las propiedades relacionadas con el contenido del archivo. |
| Provider |
Obtiene el objeto StorageProvider que contiene información sobre el servicio que almacena el archivo actual. |
Métodos
| CopyAndReplaceAsync(IStorageFile) |
Reemplaza el archivo especificado por una copia del archivo actual. |
| CopyAsync(IStorageFolder) |
Crea una copia del archivo en la carpeta especificada. |
| CopyAsync(IStorageFolder, String) |
Crea una copia del archivo en la carpeta especificada y cambia el nombre de la copia. |
| CopyAsync(IStorageFolder, String, NameCollisionOption) |
Crea una copia del archivo en la carpeta especificada y cambia el nombre de la copia. Este método también especifica qué hacer si ya existe un archivo con el mismo nombre en la carpeta de destino. |
| CreateStreamedFileAsync(String, StreamedFileDataRequestedHandler, IRandomAccessStreamReference) |
Crea un storageFile para representar el flujo de datos especificado. Este método permite a la aplicación generar los datos a petición especificando una función que se va a invocar cuando se accede a storageFile que representa la secuencia por primera vez. |
| CreateStreamedFileFromUriAsync(String, Uri, IRandomAccessStreamReference) |
Crea un storageFile para representar un flujo de datos a partir del recurso de identificador uniforme de recursos (URI) especificado. Este método permite a la aplicación descargar los datos a petición cuando se accede por primera vez al storageFile que representa la secuencia. |
| DeleteAsync() |
Elimina el archivo actual. |
| DeleteAsync(StorageDeleteOption) |
Elimina el archivo actual y, opcionalmente, elimina el elemento de forma permanente. |
| GetBasicPropertiesAsync() |
Obtiene las propiedades básicas del archivo actual. |
| GetFileFromApplicationUriAsync(Uri) |
Obtiene un objeto StorageFile para representar el recurso de aplicación identificador uniforme de recursos (URI) especificado. Para obtener ejemplos de URI de ejemplo , consulte Carga de imágenes y recursos adaptados a escala, tema, contraste alto y otros. |
| GetFileFromPathAsync(String) |
Obtiene un objeto StorageFile que representa el archivo en la ruta de acceso especificada. |
| GetFileFromPathForUserAsync(User, String) |
Obtiene un objeto StorageFile basado en una ruta de acceso absoluta en el sistema de archivos para un usuario determinado. |
| GetParentAsync() |
Obtiene la carpeta primaria del archivo actual. |
| GetScaledImageAsThumbnailAsync(ThumbnailMode) |
Obtiene una imagen escalada como una miniatura, determinada por el propósito de la miniatura. |
| GetScaledImageAsThumbnailAsync(ThumbnailMode, UInt32) |
Obtiene una imagen escalada como una miniatura, determinada por el propósito de la miniatura y el tamaño solicitado. |
| GetScaledImageAsThumbnailAsync(ThumbnailMode, UInt32, ThumbnailOptions) |
Obtiene una imagen escalada como una miniatura, determinada por el propósito de la miniatura, el tamaño solicitado y las opciones especificadas. |
| GetThumbnailAsync(ThumbnailMode) |
Recupera una imagen en miniatura ajustada para el archivo, determinada por el propósito de la miniatura. |
| GetThumbnailAsync(ThumbnailMode, UInt32) |
Recupera una imagen en miniatura ajustada para el archivo, determinada por el propósito de la miniatura y el tamaño solicitado. |
| GetThumbnailAsync(ThumbnailMode, UInt32, ThumbnailOptions) |
Recupera una imagen en miniatura ajustada para el archivo, determinada por el propósito de la miniatura, el tamaño solicitado y las opciones especificadas. |
| IsEqual(IStorageItem) |
Indica si el archivo actual es igual al archivo especificado. |
| IsOfType(StorageItemTypes) |
Determina si el objeto StorageFile actual coincide con el valor de StorageItemTypes especificado. |
| MoveAndReplaceAsync(IStorageFile) |
Mueve el archivo actual a la ubicación del archivo especificado y reemplaza el archivo especificado en esa ubicación. |
| MoveAsync(IStorageFolder) |
Mueve el archivo actual a la carpeta especificada. |
| MoveAsync(IStorageFolder, String) |
Mueve el archivo actual a la carpeta especificada y cambia el nombre del archivo según el nombre deseado. |
| MoveAsync(IStorageFolder, String, NameCollisionOption) |
Mueve el archivo actual a la carpeta especificada y cambia el nombre del archivo según el nombre deseado. Este método también especifica qué hacer si ya existe un archivo con el mismo nombre en la carpeta especificada. |
| OpenAsync(FileAccessMode) |
Abre una secuencia de acceso aleatorio con las opciones especificadas sobre el archivo especificado. |
| OpenAsync(FileAccessMode, StorageOpenOptions) |
Abre una secuencia de acceso aleatorio con las opciones especificadas sobre el archivo especificado. |
| OpenReadAsync() |
Abre una secuencia de acceso aleatorio en el archivo actual para leer el contenido del archivo. |
| OpenSequentialReadAsync() |
Abre una secuencia de acceso secuencial sobre el archivo actual para leer el contenido del archivo. |
| OpenTransactedWriteAsync() |
Abre una secuencia de acceso aleatorio al archivo que se puede usar para las operaciones de transacción y escritura. |
| OpenTransactedWriteAsync(StorageOpenOptions) |
Abre una secuencia de acceso aleatorio al archivo que se puede usar para las operaciones de transacción y escritura con las opciones especificadas. |
| RenameAsync(String) |
Cambia el nombre del archivo actual. |
| RenameAsync(String, NameCollisionOption) |
Cambia el nombre del archivo actual. Este método también especifica qué hacer si un elemento existente en la ubicación del archivo actual tiene el mismo nombre. |
| ReplaceWithStreamedFileAsync(IStorageFile, StreamedFileDataRequestedHandler, IRandomAccessStreamReference) |
Reemplaza el contenido del archivo al que hace referencia el objeto IStorageFile especificado por un nuevo flujo de datos. Este método permite a la aplicación generar los datos a petición especificando una función que se va a invocar cuando se accede a storageFile que representa la secuencia por primera vez. |
| ReplaceWithStreamedFileFromUriAsync(IStorageFile, Uri, IRandomAccessStreamReference) |
Reemplaza el contenido del archivo al que hace referencia el objeto IStorageFile especificado por un nuevo flujo de datos del identificador uniforme de recursos (URI) especificado. Este método permite a la aplicación descargar los datos a petición cuando se accede por primera vez al storageFile que representa la secuencia. Se obtiene acceso al flujo de datos a través del storageFile que se devuelve y los datos se descargan a petición cuando se accede a StorageFile por primera vez. Reemplaza el objeto IStorageFile que representa el archivo especificado por un nuevo StorageFile que proporciona una secuencia del identificador uniforme de recursos (URI) especificado. |
Se aplica a
Consulte también
- StorageFolder
- IStorageFile
- IStorageItem
- IRandomAccessStreamReference
- IInputStreamReference
- IStorageItemProperties
- IStorageItemProperties2
- IStorageItem2
- IStorageItemPropertiesWithProvider
- IStorageFilePropertiesWithAvailability
- Ejemplo de serialización y deserialización de datos
- Ejemplo de acceso a archivos