Fichier
Une API pour lire, écrire et naviguer dans les hiérarchies de système de fichiers, basés sur l' api du fichier w3c.
Objets
- DirectoryEntry
- DirectoryReader
- Fichier
- FileEntry
- FileError
- FileReader
- Système de fichiers
- Transfert de fichiers
- FileTransferError
- FileUploadOptions
- FileUploadResult
- FileWriter
- Drapeaux
- Local
- Métadonnées
Accéder à la fonctionnalité
Depuis la version 3.0, Cordova implémente API au niveau du périphérique comme les plugins. Utiliser de la CLI plugin commande, décrite dans l'Interface de ligne de commande, d'ajouter ou de supprimer cette fonction pour un projet :
$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-file.git
$ cordova plugin rm org.apache.cordova.core.file
Pour utiliser le plugin de transfert de fichiers vous devez ajouter séparément.
$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-file-transfer.git
$ cordova plugin rm org.apache.cordova.core.file-transfer
Ces commandes s'appliquent à toutes les plates-formes ciblées, mais modifier les paramètres de configuration spécifiques à la plateforme décrites ci-dessous :
-
Android
(in app/res/xml/config.xml) <feature name="File"> <param name="android-package" value="org.apache.cordova.FileUtils" /> </feature> <feature name="FileTransfer"> <param name="android-package" value="org.apache.cordova.FileTransfer" /> </feature> (in app/AndroidManifest.xml) <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> -
BlackBerry WebWorks
(in www/plugins.xml) <feature name="File"> <param name="blackberry-package" value="org.apache.cordova.file.FileManager" /> </feature> <feature name="FileTransfer"> <param name="blackberry-package" value="org.apache.cordova.http.FileTransfer" /> </feature> (in www/config.xml) <feature id="blackberry.io.file" required="true" version="1.0.0.0" /> <feature id="blackberry.utils" required="true" version="1.0.0.0" /> <feature id="blackberry.io.dir" required="true" version="1.0.0.0" /> <rim:permissions> <rim:permit>access_shared</rim:permit> </rim:permissions> -
iOS (en
config.xml)<feature name="File"> <param name="ios-package" value="CDVFile" /> </feature> <feature name="FileTransfer"> <param name="ios-package" value="CDVFileTransfer" /> </feature>
Certaines plates-formes peuvent prendre en charge cette fonctionnalité sans nécessiter aucune configuration spéciale. Voir plate-forme prise en charge pour une vue d'ensemble.
Fichier
Cet objet contient des attributs d'un fichier unique.
Propriétés
nom: le nom du fichier. (DOMString)
fullPath: le chemin d'accès complet du fichier dont le nom de fichier. (DOMString)
type: le type mime du fichier. (DOMString)
lastModifiedDate: la dernière fois que le fichier a été modifié. (Date)
taille: la taille du fichier en octets. (long)
Méthodes
- tranche: ne sélectionner qu'une partie du fichier à lire.
Détails
Le File objet contient des attributs d'un fichier unique. Vous pouvez obtenir une instance d'un File objet en appelant une FileEntry de l'objet file() méthode.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
tranche
Retourner un nouveau File objet, dont FileReader retourne uniquement la partie spécifiée du fichier. Négatif pour les valeurs start ou end sont mesurées à partir de la fin du fichier. Les index sont positionnés par rapport à la tranche actuelle. (Voir l'exemple complet ci-dessous.)
Paramètres :
Démarrer: l'index du premier octet à lire, inclusivement.
fin: l'index de l'octet après une dernière lecture.
Petit exemple
var slicedFile = file.slice(10, 30);
Exemple complet
var slice1 = file.slice(100, 400);
var slice2 = slice1.slice(20, 35);
var slice3 = file.slice(120, 135);
// slice2 and slice3 are equivalent.
Plates-formes prises en charge
- Android
- iOS
FileReader
Le FileReader permet l'accès à un fichier de base.
Propriétés
readyState: un des lecteur de trois possible précise, soit
EMPTY,LOADINGouDONE.résultat: le contenu du fichier qui ont été lus. (DOMString)
erreur: un objet contenant des erreurs. (FileError)
onloadstart: appelé au démarrage de la lecture. (Fonction)
OnLoad: appelé lorsque la lecture a complété avec succès. (Fonction)
OnAbort: appelé lorsque la lecture a été abandonnée. Par exemple, en appelant le
abort()méthode. (Fonction)OnError: appelé lorsque la lecture a échoué. (Fonction)
onloadend: appelé lorsque la demande est terminée (que ce soit dans le succès ou l'échec). (Fonction)
Remarque : Le porperty suivant n'est pas pris en charge :
-
OnProgress: appelée lors de la lecture du fichier, faisant état de progrès en termes de
progress.loaded/progress.total. (Fonction)
Méthodes
Abort: abandons de lecture du fichier.
readAsDataURL: lire le fichier et renvoyer les données sous forme d'une URL de données codées en base64.
readAsText: lectures du fichier texte.
readAsBinaryString: lit le fichier binaire et retourne une chaîne binaire.
readAsArrayBuffer: lectures du fichier comme un
ArrayBuffer.
Détails
Le FileReader objet offre un moyen de lire les fichiers de système de fichiers de l'appareil. Les fichiers peuvent être lus sous forme de texte ou comme une chaîne de données codées en base64. Écouteurs d'événements recevoir la loadstart , progress , load , loadend , error , et abort des événements.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
readAsDataURL
Paramètres :
- fichier: l'objet du fichier à lire.
Petit exemple
function win(file) {
var reader = new FileReader();
reader.onloadend = function (evt) {
console.log("read success");
console.log(evt.target.result);
};
reader.readAsDataURL(file);
};
var fail = function (error) {
console.log(error.code);
};
entry.file(win, fail);
readAsText
Paramètres :
fichier: l'objet du fichier à lire.
codage: le codage à utiliser pour coder le contenu du fichier. Valeur par défaut est UTF8.
Petit exemple
function win(file) {
var reader = new FileReader();
reader.onloadend = function (evt) {
console.log("read success");
console.log(evt.target.result);
};
reader.readAsText(file);
};
var fail = function (error) {
console.log(error.code);
};
entry.file(win, fail);
abandonner.
function win(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
console.log("read success");
console.log(evt.target.result);
};
reader.readAsText(file);
reader.abort();
};
function fail(error) {
console.log(error.code);
}
entry.file(win, fail);
Exemple complet
<!DOCTYPE html>
<html>
<head>
<title>FileReader Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}
function gotFS(fileSystem) {
fileSystem.root.getFile("readme.txt", null, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileEntry.file(gotFile, fail);
}
function gotFile(file){
readDataUrl(file);
readAsText(file);
}
function readDataUrl(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
console.log("Read as data URL");
console.log(evt.target.result);
};
reader.readAsDataURL(file);
}
function readAsText(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
console.log("Read as text");
console.log(evt.target.result);
};
reader.readAsText(file);
}
function fail(error) {
console.log(error.code);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Read File</p>
</body>
</html>
iOS Quirks
- Le paramètre encoding n'est pas pris en charge, et le codage UTF8 est toujours en vigueur.
readAsBinaryString
Actuellement pris en charge sur iOS et Android uniquement.
Paramètres :
- fichier: l'objet du fichier à lire.
Petit exemple
function win(file) {
var reader = new FileReader();
reader.onloadend = function (evt) {
console.log("read success");
console.log(evt.target.result);
};
reader.readAsBinaryString(file);
};
var fail = function (error) {
console.log(error.code);
};
entry.file(win, fail);
readAsArrayBuffer
Actuellement pris en charge sur iOS et Android uniquement.
Paramètres :
- fichier: l'objet du fichier à lire.
Petit exemple
function win(file) {
var reader = new FileReader();
reader.onloadend = function (evt) {
console.log("read success");
console.log(new Uint8Array(evt.target.result));
};
reader.readAsArrayBuffer(file);
};
var fail = function (error) {
console.log(error.code);
};
entry.file(win, fail);
FileWriter
En tant qu'objet permet de créer et d'écrire des données dans un fichier.
Propriétés
readyState: un des trois États possibles, soit
INIT,WRITING, ouDONE.fileName: le nom du fichier à écrire. (DOMString)
longueur: la longueur du fichier à écrire. (long)
position: la position actuelle du pointeur de la file. (long)
erreur: un objet contenant des erreurs. (FileError)
onwritestart: appelé au démarrage de l'écriture. (Fonction)
onwrite: appelé lorsque la requête s'est terminée correctement. (Fonction)
OnAbort: appelé lorsque l'écriture a été abandonnée. Par exemple, en appelant la méthode abort(). (Fonction)
OnError: appelé lorsque l'écriture a échoué. (Fonction)
onwriteend: appelé lorsque la demande est terminée (que ce soit dans le succès ou l'échec). (Fonction)
La propriété suivante n'est pas supportée :
-
OnProgress: appelée lors de l'écriture du fichier, faisant état de progrès en termes de
progress.loaded/progress.total. (Fonction)
Méthodes
Annuler: annule l'écriture du fichier.
Rechercher: déplace le pointeur de fichier à l'octet spécifié.
tronquer: raccourcit le fichier à la longueur spécifiée.
écrire: écrit les données dans le fichier.
Détails
Le FileWriter objet offre la possibilité d'écrire des fichiers codés en UTF-8 pour le système de fichiers du périphérique. Les applications répondent aux writestart , progress , write , writeend , error , et abort des événements.
Chaque FileWriter correspond à un fichier unique, à laquelle les données peuvent être écrites plusieurs fois. La FileWriter maintient du fichier position et length attributs, qui permettent l'application pour seek et write n'importe où dans le fichier. Par défaut, le FileWriter écrit au début du fichier, en remplaçant les données existantes. Définissez le paramètre optionnel append booléen à true dans la FileWriter de constructeur pour écrire à la fin du fichier.
Données textuelles sont pris en charge par toutes les plates-formes répertoriées ci-dessous. Texte est codé au format UTF-8 avant d'être écrites sur le système de fichiers. Certaines plates-formes soutiennent également les données binaires, qui peuvent être passées comme un ArrayBuffer ou un objet Blob.
Plates-formes prises en charge
Texte et binaire Support :
- Android
- iOS
Support de texte uniquement :
- BlackBerry WebWorks (OS 5.0 et plus)
- Windows Phone 7 et 8
- Windows 8
Chercher petit exemple
function win(writer) {
// fast forwards file pointer to end of file
writer.seek(writer.length);
};
var fail = function(evt) {
console.log(error.code);
};
entry.createWriter(win, fail);
Petit exemple de tronquer
function win(writer) {
writer.truncate(10);
};
var fail = function(evt) {
console.log(error.code);
};
entry.createWriter(win, fail);
Écrire exemple rapide
function win(writer) {
writer.onwrite = function(evt) {
console.log("write success");
};
writer.write("some sample text");
};
var fail = function(evt) {
console.log(error.code);
};
entry.createWriter(win, fail);
Binaire écrire exemple rapide
function win(writer) {
var data = new ArrayBuffer(5),
dataView = new Int8Array(data);
for (i=0; i < 5; i++) {
dataView[i] = i;
}
writer.onwrite = function(evt) {
console.log("write success");
};
writer.write(data);
};
var fail = function(evt) {
console.log(error.code);
};
entry.createWriter(win, fail);
Ajouter exemple rapide
function win(writer) {
writer.onwrite = function(evt) {
console.log("write success");
};
writer.seek(writer.length);
writer.write("appended text");
};
var fail = function(evt) {
console.log(error.code);
};
entry.createWriter(win, fail);
Abandon rapide exemple
function win(writer) {
writer.onwrite = function(evt) {
console.log("write success");
};
writer.write("some sample text");
writer.abort();
};
var fail = function(evt) {
console.log(error.code);
};
entry.createWriter(win, fail);
Exemple complet
<!DOCTYPE html>
<html>
<head>
<title>FileWriter Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}
function gotFS(fileSystem) {
fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileEntry.createWriter(gotFileWriter, fail);
}
function gotFileWriter(writer) {
writer.onwriteend = function(evt) {
console.log("contents of file now 'some sample text'");
writer.truncate(11);
writer.onwriteend = function(evt) {
console.log("contents of file now 'some sample'");
writer.seek(4);
writer.write(" different text");
writer.onwriteend = function(evt){
console.log("contents of file now 'some different text'");
}
};
};
writer.write("some sample text");
}
function fail(error) {
console.log(error.code);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Write File</p>
</body>
</html>
Système de fichiers
Cet objet représente un système de fichiers.
Propriétés
nom: le nom du système de fichiers. (DOMString)
racine: le répertoire racine du système de fichiers. (DirectoryEntry)
Détails
Le FileSystem objet représente des informations sur le système de fichiers. Le nom du système de fichiers est unique dans l'ensemble de la liste des systèmes de fichiers exposées. La propriété root contient un DirectoryEntry objet qui représente le répertoire racine du système fichier.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
Exemple de fichier rapide de système
function onSuccess(fileSystem) {
console.log(fileSystem.name);
console.log(fileSystem.root.name);
}
// request the persistent file system
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, null);
Exemple complet
<!DOCTYPE html>
<html>
<head>
<title>File System Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
}
function onFileSystemSuccess(fileSystem) {
console.log(fileSystem.name);
console.log(fileSystem.root.name);
}
function fail(evt) {
console.log(evt.target.error.code);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>File System</p>
</body>
</html>
FileEntry
Représente un fichier sur un système de fichiers, tel que défini dans la spécification W3C répertoires et systèmes .
Propriétés
isFile: toujours
true. (booléen)isDirectory: toujours
false. (booléen)name: le nom du
FileEntry, à l'exclusion du chemin menant à celui-ci. (DOMString)fullPath: le chemin d'accès complet absolu de la racine de
FileEntry. (DOMString)
Remarque : L'attribut suivant est défini par la spécification W3C, mais n'est pas supportée :
-
système de fichiers: le système de fichiers sur lequel le
FileEntryréside. (Système de fichiers)
Méthodes
getMetadata: recherche des métadonnées relatives à un fichier.
setMetadata: définit des métadonnées sur un fichier.
moveTo: déplace un fichier vers un autre emplacement sur le système de fichiers.
copyTo: copie un fichier vers un autre emplacement sur le système de fichiers.
toURL: retourne une URL qui peut être utilisée pour localiser un fichier.
supprimer: efface un fichier.
getParent: cherche le répertoire parent.
createWriter: crée un objet
FileWriterqui peut être utilisé pour écrire dans un fichier.fichier: crée un objet
Filecontenant les propriétés de fichier.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
getMetadata
Recherche des métadonnées relatives à un fichier.
Paramètres :
successCallback: un callback passé à un objet
Metadata. (Fonction)errorCallback: un callback qui s'exécute si une erreur se produit lors de la récupération du
Metadata. Appelée avec un objetFileError. (Fonction)
Petit exemple
function success(metadata) {console.log ("date de modification:" + metadata.modificationTime);}
function fail(error) {alert(error.code);}
/ / Demande l'objet de métadonnées pour cette entrée entry.getMetadata (succès, échec) ;
setMetadata
Ensemble de métadonnées sur un fichier.
Actuellement ne fonctionne que sur iOS.
- celle-ci définira les attributs étendus d'un fichier.
Paramètres :
successCallback: un callback qui s'exécute lorsque les métadonnées sont définie. (Fonction)
errorCallback: un callback qui s'exécute lorsque les métadonnées ne sont pas correctement définies. (Fonction)
metadataObject: un objet qui contient les clés et les valeurs de métadonnées. (Objet)
Petit exemple
function success() {
console.log("The metadata was successfully set.");
}
function fail() {
alert("There was an error in setting the metadata");
}
// Set the metadata
entry.setMetadata(success, fail, { "com.apple.MobileBackup": 1});
Spécificités iOS
- Seulement l'attribut étendu
com.apple.MobileBackupest pris en charge. Affectez la valeur1pour empêcher le fichier en cours d'être sauvegardé sur iCloud. Affecte la valeur `` pour ré-activer la sauvegarde du fichier vers iCloud.
Petit exemple
function setFileMetadata(localFileSystem, filePath, metadataKey, metadataValue)
{
var onSetMetadataWin = function() {
console.log("success setting metadata")
}
var onSetMetadataFail = function() {
console.log("error setting metadata")
}
var onGetFileWin = function(parent) {
var data = {};
data[metadataKey] = metadataValue;
parent.setMetadata(onSetMetadataWin, onSetMetadataFail, data);
}
var onGetFileFail = function() {
console.log("error getting file")
}
var onFSWin = function(fileSystem) {
fileSystem.root.getFile(filePath, {create: true, exclusive: false}, onGetFileWin, onGetFileFail);
}
var onFSFail = function(evt) {
console.log(evt.target.error.code);
}
window.requestFileSystem(localFileSystem, 0, onFSWin, onFSFail);
}
setFileMetadata(LocalFileSystem.PERSISTENT, "Backups/sqlite.db", "com.apple.MobileBackup", 1);
moveTo
Déplace un fichier vers un autre emplacement sur le système de fichiers. Une erreur se produit si l'application tente de :
déplacer un fichier dans son parent, si un nom différent de son nom actuel n'est pas fourni ;
déplacer un fichier vers un chemin occupé par un répertoire ;
En outre, déplacer un fichier sur un fichier existant tente de supprimer et de remplacer ce fichier.
Paramètres :
parent: le répertoire parent vers laquelle déplacer le fichier. (DirectoryEntry)
newName: le nouveau nom du fichier. Par défaut, le nom actuel si non spécifié. (DOMString)
successCallback: un rappel passé le nouveau fichier
FileEntryobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de déplacer le fichier. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(entry) {
console.log("New Path: " + entry.fullPath);
}
function fail(error) {
alert(error.code);
}
function moveFile(entry) {
var parent = document.getElementById('parent').value,
parentName = parent.substring(parent.lastIndexOf('/')+1),
parentEntry = new DirectoryEntry(parentName, parent);
// move the file to a new directory and rename it
entry.moveTo(parentEntry, "newFile.txt", success, fail);
}
copyTo
Copier un fichier vers un nouvel emplacement sur le système de fichiers. Une erreur se produit si l'application tente de :
- copier un fichier dans sa société mère, si un nom différent de son actuel n'est pas fourni.
Paramètres :
parent: le répertoire parent dans lequel copier le fichier. (DirectoryEntry)
newName: le nouveau nom du fichier. Par défaut, le nom actuel si non spécifié. (DOMString)
successCallback: un rappel passé le nouveau fichier
FileEntryobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de copier le fichier. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function win(entry) {
console.log("New Path: " + entry.fullPath);
}
function fail(error) {
alert(error.code);
}
function copyFile(entry) {
var parent = document.getElementById('parent').value,
parentName = parent.substring(parent.lastIndexOf('/')+1),
parentEntry = new DirectoryEntry(parentName, parent);
// copy the file to a new directory and rename it
entry.copyTo(parentEntry, "file.copy", success, fail);
}
toURL
Retourne une URL qui peut être utilisée pour localiser le fichier.
Petit exemple
// Request the URL for this entry
var fileURL = entry.toURL();
console.log(fileURL);
supprimer
Supprime un fichier.
Paramètres :
successCallback: une fonction de rappel qui s'exécute après que le fichier a été supprimé. Appelé sans paramètre. (Fonction)
errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de supprimer le fichier. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(entry) {
console.log("Removal succeeded");
}
function fail(error) {
alert('Error removing file: ' + error.code);
}
// remove the file
entry.remove(success, fail);
getParent
Rechercher le parent DirectoryEntry qui contient le fichier.
Paramètres :
successCallback: un rappel passé parent du fichier
DirectoryEntry. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de récupérer le parent
DirectoryEntry. Appelée avec unFileErrorobjet. (Fonction)
Petit exemple
function success(parent) {
console.log("Parent Name: " + parent.name);
}
function fail(error) {
alert(error.code);
}
// Get the parent DirectoryEntry
entry.getParent(success, fail);
createWriter
Créer un FileWriter objet associé au fichier représenté par laFileEntry.
Paramètres :
successCallback: un rappel passé un
FileWriterobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lors de la tentative de créer le FileWriter. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(writer) {
writer.write("Some text to the file");
}
function fail(error) {
alert(error.code);
}
// create a FileWriter to write to the file
entry.createWriter(success, fail);
fichier
Retourner un File objet qui représente l'état actuel du dossier que cette FileEntry représente.
Paramètres :
successCallback: un rappel passé un
Fileobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous créez le
Fileobjet, par exemple lorsque le fichier n'existe plus. Appelée avec unFileErrorobjet. (Fonction)
Petit exemple
function success(file) {
console.log("File size: " + file.size);
}
function fail(error) {
alert("Unable to retrieve file properties: " + error.code);
}
// obtain properties of a file
entry.file(success, fail);
DirectoryEntry
Cet objet représente un répertoire sur un système de fichiers, tel que défini par la spécification W3C répertoires et systèmes .
Propriétés
isFile: toujours
false. (booléen)isDirectory: toujours
true. (booléen)name: le nom du
DirectoryEntry, à l'exclusion du chemin menant à celle-ci. (DOMString)fullPath: le chemin d'accès complet absolu de la racine au
DirectoryEntry. (DOMString)
Remarque : L'attribut suivant est défini par la spécification W3C, mais n'est pas supportée :
-
filesystem: le système de fichiers sur lequel le
DirectoryEntryréside. (Système de fichiers)
Méthodes
Les méthodes suivantes peuvent être appelées sur un objet DirectoryEntry :
getMetadata: recherche des métadonnées relatives à un répertoire.
setMetadata: définit des métadonnées sur un répertoire.
moveTo: déplace un répertoire vers un autre emplacement sur le système de fichiers.
copyTo: copie un répertoire vers un autre emplacement sur le système de fichiers.
toURL: renvoie une URL pour aider à localiser un répertoire.
remove: supprime un répertoire. Le répertoire doit être vide.
getParent: cherche le répertoire parent.
createReader: crée un nouveau
DirectoryReaderqui peut lire les entrées d'un répertoire.getDirectory: crée ou recherche un répertoire.
getFile: crée ou recherche un fichier.
removeRecursively: supprime un répertoire et tout son contenu.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
getMetadata
Rechercher des métadonnées relatives à un répertoire.
Paramètres :
successCallback: une fonction de callback pour exécuter avec un objet
Metadata. (Fonction)errorCallback: une fonction de callback à exécuter si une erreur se produit lors de la récupération du
Metadata. Appelée avec un objetFileError. (Fonction)
Petit exemple
function success(metadata) {console.log ("date de modification:" + metadata.modificationTime);}
function fail(error) {alert(error.code);}
/ / Demande l'objet de métadonnées pour cette entrée entry.getMetadata (succès, échec) ;
setMetadata
Définit les attributs étendus d'un répertoire, ou les métadonnées. Ne fonctionne actuellement que sur iOS.
Paramètres :
successCallback: un callback qui s'exécute lorsque les métadonnées sont correctement définies. (Fonction)
errorCallback: un callback qui s'exécute lorsque les métadonnées ne parviennent pas à être définie. (Fonction)
metadataObject: un objet qui contient les clés et les valeurs de métadonnées. (Objet)
Petit exemple
function success() {
console.log("The metadata was successfully set.");
}
function fail() {
alert("There was an error in setting the metadata");
}
// Set the metadata
entry.setMetadata(success, fail, { "com.apple.MobileBackup": 1});
Spécificités iOS
- Seulement l'atttribut étendu
com.apple.MobileBackupest pris en charge. Affecte la valeur1pour empêcher que le répertoire en cours soit sauvegardé sur iCloud. Affecte la valeur `` pour ré-activer la sauvegarde du répertoire sur iCloud.
Petit exemple
function setFolderMetadata(localFileSystem, subFolder, metadataKey, metadataValue)
{
var onSetMetadataWin = function() {
console.log("success setting metadata")
}
var onSetMetadataFail = function() {
console.log("error setting metadata")
}
var onGetDirectoryWin = function(parent) {
var data = {};
data[metadataKey] = metadataValue;
parent.setMetadata(onSetMetadataWin, onSetMetadataFail, data);
}
var onGetDirectoryFail = function() {
console.log("error getting dir")
}
var onFSWin = function(fileSystem) {
fileSystem.root.getDirectory(subFolder, {create: true, exclusive: false}, onGetDirectoryWin, onGetDirectoryFail);
}
var onFSFail = function(evt) {
console.log(evt.target.error.code);
}
window.requestFileSystem(localFileSystem, 0, onFSWin, onFSFail);
}
setFolderMetadata(LocalFileSystem.PERSISTENT, "Backups", "com.apple.MobileBackup", 1);
moveTo
Déplace un répertoire vers un autre emplacement sur le système de fichiers. Une erreur se produit si l'application tente de :
déplacer un répertoire à l'intérieur de lui-même ou à n'importe quel enfant à n'importe quelle profondeur.
déplacer un répertoire dans son parent, si un nom différent de son répertoire en cours n'est pas fourni.
déplacer un répertoire vers un chemin occupé par un fichier.
déplacer un répertoire vers un chemin occupé par un répertoire qui n'est pas vide.
Déplacer un répertoire sur le dessus un répertoire vide existant tente de supprimer et de remplacer ce répertoire.
Paramètres :
parent: le répertoire parent vers laquelle déplacer le répertoire. (DirectoryEntry)
newName: le nouveau nom du répertoire. Par défaut, le nom actuel si non spécifié. (DOMString)
successCallback: une fonction de rappel qui s'exécute avec le
DirectoryEntryobjet pour le nouveau répertoire. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de déplacer le répertoire. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(entry) {
console.log("New Path: " + entry.fullPath);
}
function fail(error) {
alert(error.code);
}
function moveDir(entry) {
var parent = document.getElementById('parent').value,
parentName = parent.substring(parent.lastIndexOf('/')+1),
newName = document.getElementById('newName').value,
parentEntry = new DirectoryEntry(parentName, parent);
// move the directory to a new directory and rename it
entry.moveTo(parentEntry, newName, success, fail);
}
copyTo
Copier un répertoire vers un autre emplacement sur le système de fichiers. Une erreur se produit si l'application tente de :
copier un répertoire à l'intérieur de lui-même à toute profondeur.
copier un répertoire dans sa société mère, si un nom différent de son répertoire en cours n'est pas fourni.
Répertoire des copies sont toujours récursifs et copiez tout le contenu du répertoire.
Paramètres :
parent: le répertoire parent dans lequel copier le répertoire. (DirectoryEntry)
newName: le nouveau nom du répertoire. Par défaut, le nom actuel si non spécifié. (DOMString)
successCallback: une fonction de rappel qui s'exécute avec le
DirectoryEntryobjet pour le nouveau répertoire. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de copier l'annuaire sous-jacent. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function win(entry) {
console.log("New Path: " + entry.fullPath);
}
function fail(error) {
alert(error.code);
}
function copyDir(entry) {
var parent = document.getElementById('parent').value,
parentName = parent.substring(parent.lastIndexOf('/')+1),
newName = document.getElementById('newName').value,
parentEntry = new DirectoryEntry(parentName, parent);
// copy the directory to a new directory and rename it
entry.copyTo(parentEntry, newName, success, fail);
}
toURL
Retourne une URL qui peut être utilisée pour localiser le répertoire.
Petit exemple
// Get the URL for this directory
var dirURL = entry.toURL();
console.log(dirURL);
supprimer
Supprime un répertoire. Une erreur se produit si l'application tente de :
supprimer un répertoire qui n'est pas vide.
Supprimez le répertoire racine du système de fichiers.
Paramètres :
successCallback: une fonction de rappel qui s'exécute après que le répertoire est supprimé. Appelé sans paramètre. (Fonction)
errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de supprimer le répertoire. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(entry) {console.log ("l'enlèvement a réussi");}
function fail(error) {alert ("erreur de suppression de répertoire: ' + error.code);}
/ / supprimer ce répertoire entry.remove (succès, échec) ;
getParent
Rechercher le parent DirectoryEntry contenant le répertoire.
Paramètres :
successCallback: un rappel passé parent du répertoire
DirectoryEntry. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de récupérer le parent
DirectoryEntry. Appelée avec unFileErrorobjet. (Fonction)
Petit exemple
function success(parent) {
console.log("Parent Name: " + parent.name);
}
function fail(error) {
alert('Failed to get parent directory: ' + error.code);
}
// Get the parent DirectoryEntry
entry.getParent(success, fail);
createReader
Crée une nouvelle DirectoryReader pour lire le contenu d'un répertoire.
Petit exemple
// create a directory reader
var directoryReader = entry.createReader();
getDirectory
Crée ou lève les yeux un répertoire existant. Une erreur se produit si l'application tente de :
- Créez un répertoire dont le parent immédiat n'existe pas encore.
Paramètres :
chemin d'accès: le chemin vers le répertoire leva ou créé. Un chemin absolu ou un chemin d'accès relatif de cette
DirectoryEntry. (DOMString)options: Options pour spécifier si le répertoire est créé s'il n'existe pas. (Drapeaux)
successCallback: une fonction de rappel qui s'exécute avec un
DirectoryEntryobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous créez ou en levant le répertoire. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(dirEntry) {console.log ("nom du répertoire:" + dirEntry.name);}
function fail(error) {alert ("Impossible de créer le nouveau répertoire:" + error.code);}
/ / Récupérer un répertoire existant, ou créer si elle n'existe pas déjà entry.getDirectory (« Nouveau_répertoire », {créer : true, exclusif : false}, succès, échec) ;
getFile
Crée ou lève les yeux un fichier. Une erreur se produit si l'application tente de :
- Créez un fichier dont le parent immédiat n'existe pas encore.
Paramètres :
chemin d'accès: le chemin d'accès au fichier pour être levé ou créé. Un chemin absolu ou un chemin d'accès relatif de cette
DirectoryEntry. (DOMString)options: Options pour spécifier si le fichier est créé s'il n'existe pas. (Drapeaux)
successCallback: un rappel passé un
FileEntryobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous créez ou en levant le fichier. Appelée avec un
FileErrorobjet. (Fonction)
Petit exemple
function success(fileEntry) {console.log ("nom de fichier:" + fileEntry.name);}
function fail(error) {alert ("Impossible de récupérer le fichier:" + error.code);}
/ / Récupérer un fichier existant, ou créer si elle n'existe pas de entry.getFile (« newFile.txt », {créer : vrai, exclusif : false}, succès, échec) ;
removeRecursively
Supprime un répertoire et tout son contenu. En cas d'erreur (par exemple en essayant de supprimer un répertoire contenant un fichier qui ne peut pas être supprimé), une partie du contenu du répertoire peuvent être supprimées. Une erreur se produit si l'application tente de :
- Supprimez le répertoire racine du système de fichiers.
Paramètres :
successCallback: un rappel qui s'exécute après le
DirectoryEntrya été supprimé. Appelé sans paramètre. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lorsque vous tentez de supprimer le
DirectoryEntry. Appelée avec unFileErrorobjet. (Fonction)
Petit exemple
function success(parent) {
console.log("Remove Recursively Succeeded");
}
function fail(error) {
alert("Failed to remove directory or it's contents: " + error.code);
}
// remove the directory and all it's contents
entry.removeRecursively(success, fail);
Bizarreries de blackBerry
Peut échouer avec un ControlledAccessException dans les cas suivants :
- Une application tente d'accéder à un répertoire créé par une installation précédente de l'application.
Solution : Vérifiez les répertoires temporaires sont nettoyés manuellement, ou par l'application avant la réinstallation.
- Si le périphérique est connecté par USB.
Solution : déconnecter le câble USB de l'appareil et exécutez à nouveau.
DirectoryReader
Un objet qui répertorie les fichiers et répertoires d'un répertoire, tel que défini dans la spécification W3C répertoires et systèmes .
Méthodes
- readEntries: lire les entrées d'un répertoire.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
readEntries
Lire les entrées dans ce répertoire.
Paramètres :
successCallback: un callback qui est passé à un tableau d'objets
FileEntryetDirectoryEntry. (Fonction)errorCallback: un callback qui s'exécute si une erreur se produit lors de la récupération de la liste de répertoires. Appelée avec un objet
FileError. (Fonction)
Petit exemple
function success(entries) {
var i;
for (i=0; i<entries.length; i++) {
console.log(entries[i].name);
}
}
function fail(error) {
alert("Failed to list directory contents: " + error.code);
}
// Get a directory reader
var directoryReader = dirEntry.createReader();
// Get a list of all the entries in the directory
directoryReader.readEntries(success,fail);
Transfert de fichiers
Le FileTransfer objet permet de charger ou télécharger des fichiers vers et depuis un serveur.
Propriétés
-
OnProgress: appelée avec une
ProgressEventchaque fois qu'un nouveau segment de données est transféré. (Fonction)
Méthodes
Télécharger: envoie un fichier sur un serveur.
Télécharger: télécharge un fichier de serveur.
Annuler: annule un transfert en cours.
Détails
Le FileTransfer objet fournit un moyen de télécharger des fichiers sur un serveur distant à l'aide d'une requête HTTP de la poste multi-partie. Les protocoles HTTP et HTTPS sont supportés. Paramètres optionnels peuvent être spécifiés en passant une FileUploadOptions s'opposer à la upload() méthode. Le téléchargement réussi, un FileUploadResult objet est passé au rappel succès. Si une erreur survient, un FileTransferError objet est passé au rappel erreur. Il est également possible (uniquement sur iOS et Android) pour télécharger un fichier depuis un serveur distant et l'enregistrer sur l'appareil.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
Télécharger
Paramètres :
filePath: chemin d'accès complet du fichier sur le périphérique.
serveur: URL du serveur de réception du fichier, tel qu'il est codé par
encodeURI().successCallback: un rappel passé un
Metadataobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur survient récupérer la
Metadata. Appelée avec unFileTransferErrorobjet. (Fonction)options: paramètres facultatifs tels que le nom de fichier et le type MIME.
trustAllHosts: paramètre facultatif, valeur par défaut est
false. Si la valeurtrue, il accepte tous les certificats de sécurité. Ceci est utile car Android rejette des certificats auto-signés. Non recommandé pour une utilisation de production. Supporté sur Android et iOS. (boolean)
Petit exemple
// !! Assumes variable fileURI contains a valid URI to a text file on the device
var win = function (r) {
console.log("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
}
var fail = function (error) {
alert("An error has occurred: Code = " + error.code);
console.log("upload error source " + error.source);
console.log("upload error target " + error.target);
}
var options = new FileUploadOptions();
options.fileKey = "file";
options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1);
options.mimeType = "text/plain";
var params = {};
params.value1 = "test";
params.value2 = "param";
options.params = params;
var ft = new FileTransfer();
ft.upload(fileURI, encodeURI("http://some.server.com/upload.php"), win, fail, options);
Exemple complet
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>File Transfer Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
// Retrieve image file location from specified source
navigator.camera.getPicture(
uploadPhoto,
function(message) { alert('get picture failed'); },
{
quality : 50,
destinationType : navigator.camera.DestinationType.FILE_URI,
sourceType : navigator.camera.PictureSourceType.PHOTOLIBRARY
}
);
}
function uploadPhoto(imageURI) {
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
var params = {};
params.value1 = "test";
params.value2 = "param";
options.params = params;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI("http://some.server.com/upload.php"), win, fail, options);
}
function win(r) {
console.log("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
}
function fail(error) {
alert("An error has occurred: Code = " + error.code);
console.log("upload error source " + error.source);
console.log("upload error target " + error.target);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Upload File</p>
</body>
</html>
Réglage Télécharger en-têtes
Prise en charge par Android et iOS
function win(r) {
console.log("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
}
function fail(error) {
alert("An error has occurred: Code = " + error.code);
console.log("upload error source " + error.source);
console.log("upload error target " + error.target);
}
var uri = encodeURI("http://some.server.com/upload.php");
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=fileURI.substr(fileURI.lastIndexOf('/')+1);
options.mimeType="text/plain";
var headers={'headerParam':'headerValue'};
options.headers = headers;
var ft = new FileTransfer();
ft.upload(fileURI, uri, win, fail, options);
Quirks Android
Définir la chunkedMode option pour false pour prévenir les problèmes de téléchargement sur un serveur Nginx.
Télécharger
Paramètres :
source: URL du serveur pour télécharger le fichier, tel qu'il est codé par
encodeURI().cible: chemin d'accès complet du fichier sur le périphérique.
successCallback: un rappel passé un
FileEntryobjet. (Fonction)errorCallback: un rappel qui s'exécute si une erreur se produit lors de la récupération du
Metadata. Appelée avec unFileTransferErrorobjet. (Fonction)trustAllHosts: paramètre facultatif, valeur par défaut est
false. Si la valeurtruepuis il acceptera tous les certificats de sécurité. Ceci est utile comme Android rejette les certificats de sécurité signé libre. Non recommandé pour une utilisation de production. Supporté sur Android et iOS. (boolean)options: paramètres facultatifs, actuellement uniquement les supports en-têtes (par exemple l'autorisation (authentification de base), etc.).
Petit exemple
// !! Suppose filePath est un chemin d'accès valide sur le transfert de fichiers périphérique var = new FileTransfer() ;
var uri = encodeURI ("http://some.server.com/download.php") ;
fileTransfer.download (uri, filePath, function(entry) {console.log ("téléchargement complet:" + entry.fullPath) ;
}, function(error) {console.log (« source de l'erreur de téléchargement » + error.source) ;
Console.log (« erreur de téléchargement cible » + error.target) ;
Console.log (« code d'erreur de téléchargement » + error.code) ;
}, faux, {en-têtes: {« Autorisation »: « dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA base == "}}) ;
abandonner.
Abandonne un transfert en cours. Le rappel onerror est passé à un objet FileTransferError qui a un code d'erreur de FileTransferError.ABORT_ERR.
Plates-formes prises en charge
- Android
- iOS
Petit exemple
// !! Suppose que la variable fileURI contient un URI valide dans un fichier de texte sur la victoire de var périphérique = function(r) {console.log ("ne devrait pas être appelée.");}
var fail = function(error) {/ / error.code == FileTransferError.ABORT_ERR alert ("une erreur est survenue : Code =" + error.code) ;
Console.log (« source de l'erreur de téléchargement » + error.source) ;
Console.log ("erreur de téléchargement cible" + error.target);}
options de var = new FileUploadOptions() ;
options.fileKey="file" ;
options.fileName="myphoto.jpg" ;
options.mimeType="image/jpeg" ;
ft var = new FileTransfer() ;
ft.upload (fileURI, encodeURI ("http://some.server.com/upload.php"), win, fail, options) ;
ft.Abort() ;
OnProgress
Appelée avec un ProgressEvent chaque fois qu'un nouveau segment de données est transféré.
Plates-formes prises en charge
- Android
- iOS
Exemple
fileTransfer.onprogress = function(progressEvent) {
if (progressEvent.lengthComputable) {
loadingStatus.setPercentage(progressEvent.loaded / progressEvent.total);
} else {
loadingStatus.increment();
}
};
fileTransfer.download(...); // or fileTransfer.upload(...);
Quirks - sur les deux Android un iOS, lengthComputable est false pour les téléchargements qui utilisent l'encodage gzip.
FileUploadOptions
A FileUploadOptions objet peut être passé à la FileTransfer de l'objet upload() pour spécifier des paramètres supplémentaires pour le script d'upload.
Propriétés
fileKey: le nom de l'élément form. Valeur par défaut est
file. (DOMString)fileName: le nom de fichier à utiliser lorsque vous enregistrez le fichier sur le serveur. Valeur par défaut est
image.jpg. (DOMString)type MIME: le type mime des données à télécharger. Valeur par défaut est
image/jpeg. (DOMString)params: un ensemble de paires clé/valeur facultative pour passer dans la requête HTTP. (Objet)
chunkedMode: s'il faut télécharger les données en mode streaming mémorisé en bloc. Valeur par défaut est
true. (Boolean)en-têtes: une carte des valeurs d'en-tête en-tête/nom. Un tableau permet de spécifier plusieurs valeurs. (Objet)
Description
A FileUploadOptions objet peut être passé à la FileTransfer de l'objet upload() pour spécifier des paramètres supplémentaires pour le script d'upload.
Bizarrerie de WP7
- chunkedMode :: ignoré sur WP7.
FileUploadResult
A FileUploadResult objet est passé au rappel de succès la FileTransfer de l'objet upload() méthode.
Propriétés
bytesSent: le nombre d'octets envoyés au serveur dans le cadre du téléchargement. (long)
responseCode: code de réponse HTTP le retourné par le serveur. (long)
réponse: réponse The HTTP renvoyé par le serveur. (DOMString)
Description
Le FileUploadResult objet est retourné par le rappel de la réussite de la FileTransfer de l'objet upload() méthode.
iOS Quirks
- Ne prend pas en charge
responseCodeoubytesSent.
Drapeaux
Fournit des arguments à la DirectoryEntry de l'objet getFile() et getDirectory() méthodes qui chercher ou créent des fichiers et des répertoires, respectivement.
Propriétés
créer: indique que le fichier ou le répertoire doit être créé s'il n'existe pas déjà. (booléen)
exclusif: A n'a aucun effet en soi, mais lorsqu'il est utilisé avec
createprovoque la création de fichier ou de répertoire échoue si le chemin d'accès cible existe déjà. (booléen)
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
Petit exemple
/ / Obtenir le répertoire de données, créant si elle n'existe pas.
dataDir = fileSystem.root.getDirectory (« données », {créer : true}) ;
/ / Créer le fichier de verrouillage, si et seulement s'il n'existe pas.
lockFile = dataDir.getFile (« lockfile.txt », {créer : vrai, exclusif : true}) ;
Local
Cet objet fournit un moyen d'obtenir des systèmes de fichiers racine.
Méthodes
requestFileSystem: demande un système de fichiers. (Fonction)
resolveLocalFileSystemURI: récupérer un
DirectoryEntryouFileEntryà l'aide d'URI local. (Fonction)
Constantes
LocalFileSystem.PERSISTENT: Utilisé pour le stockage, ce qui ne devrait pas être retiré par l'agent utilisateur sans autorisation d'application ou utilisateur.LocalFileSystem.TEMPORARY: Utilisé pour le stockage sans garantie de persistance.
Détails
Les LocalFileSystem méthodes de l'objet sont définis sur le window objet.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
Demande de fichier système exemple rapide
function onSuccess(fileSystem) {
console.log(fileSystem.name);
}
// request the persistent file system
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onError);
Résoudre le système de fichiers Local URI petit exemple
function onSuccess(fileEntry) {
console.log(fileEntry.name);
}
window.resolveLocalFileSystemURI("file:///example.txt", onSuccess, onError);
Exemple complet
<!DOCTYPE html>
<html>
<head>
<title>Local File System Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
window.resolveLocalFileSystemURI("file:///example.txt", onResolveSuccess, fail);
}
function onFileSystemSuccess(fileSystem) {
console.log(fileSystem.name);
}
function onResolveSuccess(fileEntry) {
console.log(fileEntry.name);
}
function fail(evt) {
console.log(evt.target.error.code);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Local File System</p>
</body>
</html>
requestFileSystem
Demander un système de fichier dans lequel stocker les données d'application.
window.requestFileSystem(type, size, successCallback, errorCallback)
- fenêtre: référence à l'objet global window
- type: local type de système de fichiers, voir local constantes
- taille: indique la quantité d'espace stockage, en octets, l'application attend d'avoir besoin
- successCallback: appelée avec un objet système de fichiers
- errorCallback: invoquée si l'erreur produit de récupération système de fichiers
Demande de fichier système exemple rapide
function onSuccess(fileSystem) {
console.log(fileSystem.name);
}
// request the persistent file system
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onError);
Métadonnées
Une interface qui fournit des informations sur l'état d'un fichier ou un répertoire.
Propriétés
- modificationTime: le temps où le fichier ou le répertoire a été modifié. (Date)
Détails
Le Metadata objet représente des informations sur l'état d'un fichier ou un répertoire. Appeler un DirectoryEntry ou FileEntry de l'objet getMetadata() méthode se traduit par une Metadata instance.
Plates-formes prises en charge
- Android
- BlackBerry WebWorks (OS 5.0 et plus)
- iOS
- Windows Phone 7 et 8
- Windows 8
Petit exemple
function win(metadata) {
console.log("Last Modified: " + metadata.modificationTime);
}
// Request the metadata object for this entry
entry.getMetadata(win, null);
FileError
Un objet FileError est défini lorsqu'une erreur se produit dans l'une des méthodes de l'API File.
Propriétés
- code: l'un des codes d'erreur prédéfinis énumérés ci-dessous.
Constantes
FileError.NOT_FOUND_ERRFileError.SECURITY_ERRFileError.ABORT_ERRFileError.NOT_READABLE_ERRFileError.ENCODING_ERRFileError.NO_MODIFICATION_ALLOWED_ERRFileError.INVALID_STATE_ERRFileError.SYNTAX_ERRFileError.INVALID_MODIFICATION_ERRFileError.QUOTA_EXCEEDED_ERRFileError.TYPE_MISMATCH_ERRFileError.PATH_EXISTS_ERR
Description
L'objet FileError est le seul paramètre fourni à l'un des callbacks d'erreur de l'API File. Pour déterminer le type d'erreur, comparer sa propriété code à l'une des propriétés listées ci-dessus.
FileTransferError
A FileTransferError objet est passé à un rappel d'erreur lorsqu'une erreur survient.
Propriétés
code: l'un des codes d'erreur prédéfinis énumérés ci-dessous. (Nombre)
source: URI à la source. (String)
cible: URI à la cible. (String)
HTTP_STATUS: code d'état HTTP. Cet attribut n'est disponible que lorsqu'un code de réponse est reçu de la connexion HTTP. (Nombre)
Constantes
FileTransferError.FILE_NOT_FOUND_ERRFileTransferError.INVALID_URL_ERRFileTransferError.CONNECTION_ERRFileTransferError.ABORT_ERR
Description
Le FileTransferError objet est passé au rappel erreur lorsqu'une erreur se produit lorsque le chargement ou le téléchargement d'un fichier.