Xamarin.Essentials: Aplicaciones auxiliares de sistema de archivosXamarin.Essentials: File System Helpers

La clase FileSystem contiene una serie de aplicaciones auxiliares para buscar la caché y los directorios de datos de la aplicación y abrir archivos dentro del paquete de aplicación.The FileSystem class contains a series of helpers to find the application's cache and data directories and open files inside of the app package.

Primeros pasosGet started

Para empezar a usar esta API, lea la guía de introducción para Xamarin.Essentials con el fin de asegurarse de que la biblioteca está correctamente instalada y configurada en los proyectos.To start using this API, read the getting started guide for Xamarin.Essentials to ensure the library is properly installed and set up in your projects.

Uso de aplicaciones auxiliares de sistema de archivosUsing File System Helpers

Agregue una referencia a Xamarin.Essentials en su clase:Add a reference to Xamarin.Essentials in your class:

using Xamarin.Essentials;

Para obtener el directorio de la aplicación para almacenar datos en caché.To get the application's directory to store cache data. Los datos en caché se pueden usar para cualquier dato que se tenga que conservar más tiempo que los datos temporales, pero no deben ser datos necesarios para que el funcionamiento sea correcto.Cache data can be used for any data that needs to persist longer than temporary data, but should not be data that is required to properly operate.

var cacheDir = FileSystem.CacheDirectory;

Para obtener el directorio de nivel superior de la aplicación para todos los archivos que no son archivos de datos de usuario.To get the application's top-level directory for any files that are not user data files. Se realiza una copia de seguridad de estos archivos con el marco de sincronización del sistema operativo.These files are backed up with the operating system syncing framework. Vea Detalles de implementación de la plataforma a continuación.See Platform Implementation Specifics below.

var mainDir = FileSystem.AppDataDirectory;

Para abrir un archivo que se incluye en el paquete de aplicación:To open a file that is bundled into the application package:

 using (var stream = await FileSystem.OpenAppPackageFileAsync(templateFileName))
 {
    using (var reader = new StreamReader(stream))
    {
        var fileContents = await reader.ReadToEndAsync();
    }
 }

Detalles de implementación de la plataformaPlatform Implementation Specifics

  • CacheDirectory: devuelve el CacheDir del contexto actual.CacheDirectory – Returns the CacheDir of the current context.
  • AppDataDirectory: devuelve el FilesDir del contexto actual y se realiza una copia de seguridad mediante Copia de seguridad automática a partir de la API 23 y versiones posteriores.AppDataDirectory – Returns the FilesDir of the current context and are backed up using Auto Backup starting on API 23 and above.

Agregue un archivo a la carpeta Activos del proyecto de Android y marque la acción de compilación como AndroidAsset para usarla con OpenAppPackageFileAsync.Add any file into the Assets folder in the Android project and mark the Build Action as AndroidAsset to use it with OpenAppPackageFileAsync.

APIAPI