Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
File
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
L'interface File fournit des informations sur des fichiers et permet au code JavaScript d'une page web d'accéder à leurs contenus.
Les objets File sont généralements obtenus à partir de :
- l'objet
FileListretourné lorsque qu'un utilisateur ou une utilisatrice sélectionne des fichiers grâce à un élément<input>; - l'objet
DataTransferd'une opération de glisser-déposer ; - l'API
mozGetAsFile()de l'élémentHTMLCanvasElement.
Dans Gecko, le code privilégié peut créer des objets File représentant tout fichier local sans nécessiter une interaction de l'utilisateur ou de l'utilisatrice (voir Notes d'implémentation pour plus d'informations.)
Un objet File est un genre spécifique de Blob, et peut être utilisé dans tout contexte où un blob peut l'être. En particulier, FileReader, URL.createObjectURL(), createImageBitmap(), et XMLHttpRequest.send() acceptent indifféremment des Blobs et des Files.
Voir Utiliser des fichiers à partir d'applications web pour plus d'informations et des exemples.
Constructeur
File()-
Renvoie un
Filenouvellement construit.
Propriétés
File.lastModifiedLecture seule-
Renvoie le temps de dernière modification du fichier, exprimé en millisecondes écoulées depuis l'ère UNIX (1er janvier 1970 à minuit).
File.lastModifiedDateLecture seule Obsolète-
Renvoie la
Datede dernière modification du fichier. File.nameLecture seule-
Renvoie le nom du fichier.
File.webkitRelativePathLecture seule Non standard-
Renvoie le chemin auquel l'URL du
Fileest relative.
File implémente Blob, et ainsi possède les propriétés suivantes :
Méthodes
L'interface File ne définit aucune méthode, mais hérite des méthodes de l'interface Blob :
Blob.slice([start[, end[, contentType]]])-
Renvoie un nouvel objet
Blobcontenant les données du blob source comprises dans l'intervalle d'octets spécifié. Blob.stream()-
Transforme le
Fileen unReadableStreampouvant être utilisé pour lire le contenu duFile. Blob.text()-
Transforme le
Fileen un flux (stream) et le lit en entier. Renvoie unepromessequi se résoud en uneUSVString(texte). Blob.arrayBuffer()-
Transforme le
Fileen un flux (stream) et le lit en entier. Retourne unepromessequi se résoud en unArrayBuffer.
Spécifications
| Specification |
|---|
| File API> # file-section> |
Compatibilité des navigateurs
Chargement...
Notes d'implémentation
- Dans Gecko, vous pouvez utiliser API depuis du code chrome. Voir Using the DOM File API in chrome code pour plus de détails. Pour l'utiliser depuis du code chrome, JSM, ou portée Bootstrap, vous devez l'importer en utilisant
Cu.importGlobalProperties(['File']); - À partir de Gecko 6.0, le code privilégié (par exemple au sein d'une extension) peut passer un objet
nsIFileau constructeur DOMFilepour spécifier le fichier à référencer. - À partir de Gecko 8.0, vous pouvez utiliser
new Filepour créer des objetsFiledepuis des composants XPCOM au lieu de devoir instancier les objetsnsIDOMFiledirectement. Contrairement àBlob, le constructeur prend le nom de fichier comme second argument. Le nom de fichier peut être une chaîne quelconque.
new File( Array parts, String filename, BlobPropertyBag properties );
- Les propriétés et méthodes non standard suivantes ont été retirées de Gecko 7 :
File.fileName,File.fileSize,File.getAsBinary(),File.getAsDataURL(),File.getAsText(string encoding)(bug Firefox 661876). Les propriétés standardFile.name,Blob.size, et les méthodes deFileReaderdevraient être utilisées à la place.
Voir aussi
- Utiliser des fichiers à partir d'applications web
FileReader- Using the DOM File API in chrome code (pour du code privilégié s'exécutant dans Gecko, tel que des extensions de Firefox)