Este team redactor ha estado por horas investigando para darle espuestas a tu pregunta, te dejamos la respuestas así que nuestro objetivo es que te resulte de gran apoyo.
Esto es un tecnología experimental
Verifique cuidadosamente la tabla de compatibilidad del navegador antes de usarlo en producción.
los FileSystemDirectoryEntry
método de la interfaz getDirectory
()
devuelve un FileSystemDirectoryEntry
objeto correspondiente a un directorio contenido en algún lugar dentro del subárbol del directorio enraizado en el directorio en el que se llama.
Sintaxis
FileSystemDirectoryEntry.getDirectory([path][, options][, successCallback][, errorCallback]);
Parámetros
path
Opcional- A
USVString
que representa una ruta absoluta o una ruta relativa al directorio en el que se llama al método, y describe qué entrada de directorio devolver. Es posible que no se puedan utilizar rutas absolutas por motivos de seguridad. options
Opcional- Un objeto basado en el
FileSystemFlags
diccionario, que le permite especificar si crear o no la entrada si falta y si es un error si el archivo ya existe. Actualmente, estas opciones no son útiles en contextos web. successCallback
Opcional- Un método que se llamará una vez
FileSystemDirectoryEntry
Ha sido creado. El método recibe un solo parámetro: elFileSystemDirectoryEntry
objeto que representa el directorio en cuestión. errorCallback
Opcional- Un método al que se llamará si se produce un error. Recibe como único parámetro de entrada un
FileError
objeto que describe el error que ocurrió.
Valor devuelto
Errores
Si ocurre un error y una errorCallback
se especificó, se llama con un solo parámetro: un FileError
objeto que describe el error. los FileError.code
especifica qué tipo de error ocurrió, de la siguiente manera:
FileError.NOT_FOUND_ERR
- los
create
La opción no se especificó (o se especificó comofalse
) y el directorio no existe. FileError.PATH_EXISTS_ERR
- los
create
yexclusive
las opciones eran ambastrue
, que indica que el directorio debe crearse pero no debe existir ya, pero el directorio de hecho ya existe. FileError.SECURITY_ERR
- La solicitud de acceso al directorio fue denegada por razones de seguridad.
FileError.TYPE_MISMATCH_ERR
- La ruta especificada no es un directorio; probablemente sea un archivo, pero podría ser un descriptor de archivo no compatible, como una tubería; esto depende en cierta medida del agente de usuario.
FileSystemFlags
los options
parámetro es un objeto que se basa en el FileSystemFlags
diccionario; proporciona banderas que permiten ajustar el comportamiento de la getDirectory()
método.
create
Opcional- Si esta propiedad es
true
y el archivo o directorio solicitado no existe, el agente de usuario debe crearlo. El valor predeterminado esfalse
. El directorio principal ya debe existir. exclusive
Opcional- Si
true
, y elcreate
la opción también estrue
, el archivo no debe existir antes de emitir la llamada. En cambio, debe ser posible que se cree nuevamente en el momento de la llamada. El valor predeterminado esfalse
.
Valores y resultados
La siguiente tabla describe el resultado de cada combinación posible de estos indicadores dependiendo de si el archivo de destino o la ruta del directorio ya existe o no.
Valores de opción | Condición de archivo / directorio | Resultado | |
---|---|---|---|
create |
exclusive |
||
false |
n / A[1] | La ruta existe y coincide con el tipo deseado (dependiendo de si la función llamada es getFile() o getDirectory() |
los successCallback se llama con un FileSystemFileEntry si getFile() fue llamado o un FileSystemDirectoryEntry si getDirectory() fue llamado. |
false |
n / A[1] | La ruta existe pero no coincide con el tipo deseado | los errorCallback se llama con un código de error apropiado (si se proporcionó la devolución de llamada). |
true |
false |
El camino existe | El archivo o directorio existente se elimina y se reemplaza por uno nuevo, luego successCallback se llama con un FileSystemFileEntry o un FileSystemDirectoryEntry , según sea apropiado. |
true |
false |
La ruta no existe | Se crea el archivo o directorio, luego FileSystemFileEntry o un FileSystemDirectoryEntry se pasa al successCallback , según sea apropiado. |
true |
true |
El camino existe | los errorCallback se llama con un error apropiado, como FileError.PATH_EXISTS_ERR . |
true |
true |
La ruta no existe | Se crea el archivo o directorio, luego FileSystemFileEntry o un FileSystemDirectoryEntry se pasa al successCallback , según sea apropiado. |
[1] Cuando create
es false
, El valor de exclusive
es irrelevante e ignorado.
Ejemplo
En este ejemplo, se presenta una función cuyo trabajo es ubicar dentro del directorio de datos de la aplicación de un usuario un archivo JSON que contiene un diccionario de usuario para un idioma específico y luego cargar ese diccionario.
let dictionary =null;functionloadDictionaryForLanguage(appDataDirEntry, lang) dictionary =null; appDataDirEntry.getDirectory("Dictionaries",,function(dirEntry) dirEntry.getFile(lang +"-dict.json",,function(fileEntry) fileEntry.file(function(dictFile))let reader =newFileReader(); reader.addEventListener("loadend",function() dictionary =JSON.parse(reader.result);); reader.readAsText(dictFile););););
los loadDictionaryForLanguage()
la función comienza usando getDirectory()
para obtener el FileSystemDirectoryEntry
objeto que representa una subcarpeta llamada “Diccionarios” ubicada dentro del directorio de datos de la aplicación especificado. La devolución de llamada exitosa para esto toma el objeto de entrada de directorio resultante y llama getFile()
conseguir un FileSystemFileEntry
objeto que representa el archivo del diccionario; la devolución de llamada de éxito para esto, a su vez, crea una nueva FileReader
y lo usa para cargar el contenido del archivo. Cuando se carga con éxito (como lo indica el loadend
evento que se dispara), el texto cargado se pasa a JSON.parse()
para ser reconstituido en un objeto JavaScript.
Especificaciones
Especificación | Estado | Comentario |
---|---|---|
API de entradas de archivos y directorios La definición de ‘getDirectory ()’ en esa especificación. |
Borrador | Especificación inicial. |
Compatibilidad del navegador
Escritorio | Móvil | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Cromo | Borde | Firefox | explorador de Internet | Ópera | Safari | WebView Android | Chrome Android | Firefox para Android | Opera Android | Safari en IOS | Internet de Samsung | |
getDirectory |
8 | 79 | 50 En Firefox, el errorCallback El parámetro de entrada es un DOMException preferible a FileError objeto. |
No | No | 11,1 | ≤37 | 18 | 50 En Firefox, el errorCallback El parámetro de entrada es un DOMException preferible a FileError objeto. |
No | 11,3 | 1.0 |
Ver también
- API de entradas de archivos y directorios
- Introducción a la API del sistema de archivos
FileSystemDirectoryEntry
Calificaciones y comentarios
Recuerda compartir este enunciado si si solucionó tu problema.