Compartir a través de


Administrar archivos, carpetas y bibliotecas con Windows App SDK

Windows App SDK proporciona eficaces funcionalidades de administración de archivos para aplicaciones empaquetadas. Puede usar las API de los espacios de nombres Windows.Storage, Windows.Storage.Streams y Microsoft.Windows.Storage.Pickers para leer y escribir de forma eficaz varios formatos de datos en archivos, así como administrar archivos y carpetas.

Hay una amplia variedad de API relacionadas con archivos, carpetas, bibliotecas y configuraciones para aplicaciones de escritorio de Windows a partir de Windows 10. Estas características están disponibles a través de una combinación de Windows App SDK, Windows Runtime (WinRT) y las API de .NET proporcionadas por windows App SDK, Windows SDK y .NET SDK.

Usar selectores del SDK de aplicaciones de Windows para leer y escribir datos

Hay API de selector disponibles en la versión 1.8 y posteriores del SDK de aplicaciones de Windows. En los temas siguientes se proporciona información sobre el uso de las API del selector para permitir que los usuarios abran y guarden archivos y carpetas en la aplicación:

Tema Description
Abrir archivos y carpetas con selectores en WinUI Use los selectores de carpetas y archivos del SDK de aplicaciones de Windows para permitir que los usuarios examinen y seleccionen archivos o carpetas en la aplicación WinUI. Las API de selección proporcionan una experiencia familiar de Windows que ayuda a los usuarios a navegar por sus dispositivos y ubicaciones de almacenamiento en la nube. Obtenga información sobre cómo permitir que los usuarios seleccionen un archivo o carpeta para abrir mediante las clases FileOpenPicker y FolderPicker .
Guardar un archivo con el selector de Windows App SDK en WinUI Al compilar aplicaciones WinUI y otras aplicaciones cliente de Windows, los usuarios a menudo necesitan guardar archivos como documentos, imágenes u otro contenido en ubicaciones específicas de su dispositivo. El SDK de aplicaciones de Windows proporciona la clase FileSavePicker para crear una interfaz coherente y fácil de usar que permita a los usuarios elegir dónde guardar archivos y qué asignarles el nombre.

Diferencias clave entre los selectores de WinRT y Windows App SDK

Estas son algunas diferencias clave de los WinRT Windows.Storage.Pickers usados por las aplicaciones UWP:

  • A diferencia de la API Windows.Storage.Pickers existente que devuelve objetos StorageFile y StorageFolder , esta nueva API devuelve rutas de acceso basadas en cadenas a través de las clases PickFileResult y PickFolderResult . Esto simplifica la API y evita complicaciones con las funcionalidades de almacenamiento en escenarios elevados.
  • Del mismo modo, se ha reemplazado la propiedad FileSavePicker.SuggestedSaveFile (que devolvió un StorageFile). Su funcionalidad ahora está cubierta por dos propiedades de cadena: SuggestedFolder y SuggestedFileName. Estos le permiten sugerir el nombre de carpeta y archivo para el cuadro de diálogo guardar.
  • Todos los nuevos selectores están diseñados específicamente para aplicaciones de escritorio y usan una propiedad WindowId para vincular el selector a su ventana host, reemplazando el WinRT.Interop.InitializeWithWindow.Initialize patrón.
  • Los nuevos selectores permiten a los desarrolladores usarlos sin necesidad de especificar FileTypeFilter o FileTypeChoices . Aunque los selectores de UWP generan excepciones cuando estas propiedades no están configuradas, los nuevos selectores muestran todos los archivos cuando los desarrolladores no configuran explícitamente estas propiedades.
  • La ubicación Grupo Hogar se ha excluido de la nueva enumeración PickerLocationId, ya que ya no se admite desde Windows 10.
  • FolderPicker.FileTypeFilter se ha excluido porque no era funcionalmente adecuado para la selección de carpetas.
  • Excluir métodos y propiedades que ya están marcados como en desuso o "No usar". Por ejemplo, PickSingleFileAndContinue, ContinuationData, ResumePickSingleFileAsync, etc.
  • Excluyendo métodos y propiedades para el modo multiusuario, ya que las nuevas API están diseñadas actualmente para escenarios de escritorio en los que cada usuario tiene su propia sesión interactiva y cada sesión es completamente independiente de las demás sesiones del dispositivo. Esto contrasta con Xbox u otros dispositivos multiusuario.

Acceso a datos con las API de almacenamiento de WinRT

Las aplicaciones empaquetadas tienen acceso a todas las API de almacenamiento de WinRT disponibles para las aplicaciones para UWP. Tanto si va a migrar una aplicación para UWP existente como si va a crear una aplicación, puede usar estas API para leer y escribir datos. Para obtener ejemplos de uso de las API de almacenamiento en una aplicación winUI, consulte Acceso a archivos y carpetas con el SDK de aplicaciones de Windows y las API de WinRT.

Uso de las API de archivos .NET para el acceso a datos

Además de las API de WinRT, las aplicaciones de escritorio empaquetadas pueden usar las API de .NET en el espacio de nombres System.IO para leer y escribir datos. Cuando se crea un nuevo proyecto de WinUI 3, su Package.appxmanifest archivo contiene la siguiente configuración:

<Capabilities>
  <rescap:Capability Name="runFullTrust" />
</Capabilities>

Declarar esta funcionalidad restringida proporciona acceso completo al sistema de archivos, al registro y a otras funcionalidades restringidas. Para obtener más información, consulta Declaraciones de funcionalidad restringida. En otras palabras, la aplicación tiene el mismo acceso al sistema de archivos que cualquier otra aplicación de escritorio de .NET al usar las API de archivo .NET.

Para obtener ejemplos de uso de las API de .NET en una aplicación winUI, consulte Acceso a archivos y carpetas con el SDK de aplicaciones de Windows y las API de .NET.

Recursos adicionales para trabajar con archivos y carpetas

Si va a desarrollar aplicaciones WinUI empaquetadas, las API de almacenamiento de WinRT pueden ser una herramienta eficaz para leer y escribir datos. Los siguientes temas de UWP proporcionan una gran cantidad de información para los desarrolladores que buscan aprovechar estas API en sus aplicaciones.

Tema Description
Enumerar y consultar archivos y carpetas Acceda a archivos y carpetas en una carpeta, biblioteca, dispositivo o ubicación de red. También puede consultar los archivos y carpetas en una ubicación mediante la construcción de consultas de archivos y carpetas.
Creación, escritura y lectura de un archivo Lee y escribe un archivo mediante un objeto StorageFile .
Procedimientos recomendados para escribir en archivos Obtenga información sobre los procedimientos recomendados para usar varios métodos de escritura de archivos de las clases FileIO y PathIO .
Obtener propiedades de archivo Obtiene propiedades (nivel superior, básico y extendido) para un archivo representado por un objeto StorageFile .
Acceso al contenido del grupo hogar Acceda al contenido almacenado en la carpeta HomeGroup del usuario, incluidas imágenes, música y vídeos.
Determinar la disponibilidad de los archivos de Microsoft OneDrive Determine si un archivo de Microsoft OneDrive está disponible mediante la propiedad StorageFile.IsAvailable .
Archivos y carpetas en las bibliotecas Música, Imágenes y Vídeos Agregue carpetas existentes de música, imágenes o vídeos a las bibliotecas correspondientes. También puede quitar carpetas de bibliotecas, obtener la lista de carpetas de una biblioteca y detectar fotos almacenadas, música y vídeos.
Seguimiento de archivos y carpetas usados recientemente Realice un seguimiento de los archivos a los que el usuario accede con frecuencia agregándolos a la lista usada más recientemente de la aplicación (MRU). La plataforma administra el MRU automáticamente ordenando los elementos en función de cuándo se accedió por última vez y quitando el elemento más antiguo cuando se alcanza el límite de 25 elementos de la lista. Todas las aplicaciones tienen su propia MRU.
Seguimiento de los cambios del sistema de archivos en segundo plano Realice un seguimiento de los cambios en el sistema de archivos, incluso cuando la aplicación no se esté ejecutando.
Acceso a la tarjeta SD Puede almacenar y acceder a datos no esenciales en una tarjeta microSD opcional, especialmente en dispositivos móviles de bajo costo que tienen un almacenamiento interno limitado.
Acceso rápido a las propiedades de los archivos Recopile eficazmente una lista de archivos y sus propiedades de una biblioteca para usarlas a través de las API de Windows Runtime.

Consulte también

Acceso a archivos y carpetas con el SDK de aplicaciones de Windows y las API de WinRT

Acceso a archivos y carpetas con el SDK de aplicaciones de Windows y las API de .NET

System.IO