--- title: File slug: Web/API/File tags: - DOM - File translation_of: Web/API/File ---
L’interface File
fournit des informations sur des fichiers et permet au code JavaScript d’une une page web d’accéder à leurs contenus.
Les objets File
sont généralements obtenus à partir de :
mozGetAsFile()
de l’élément {{domxref("HTMLCanvasElement")}}.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 {{anch("Notes d’implémentation")}} pour plus d’informations.)
Un objet File
est un genre spécifique de {{domxref("Blob")}}, et peut être utilisé dans tout contexte où un blob peut l’être. En particulier, {{domxref("FileReader")}}, {{domxref("URL.createObjectURL()")}}, {{domxref("ImageBitmapFactories.createImageBitmap()", "createImageBitmap()")}}, et {{domxref("XMLHttpRequest", "", "send()")}} acceptent indifféremment des Blob
s et des File
s.
Voir Utiliser des fichiers à partir d'applications web pour plus d’informations et des exemples.
{{InheritanceDiagram}}
File
nouvellement construit.File
implémente {{domxref("Blob")}}, et ainsi possède les propriétés suivantes :
L’interface File
ne définit aucune méthode, mais hérite des méthodes de l’interface {{domxref("Blob")}} :
Blob
contenant les données du blob source comprises dans l’intervalle d’octets spécifié.File
en un {{domxref("ReadableStream")}} pouvant être utilisé pour lire le contenu du File
.File
en un flux (stream) et le lit en entier. Renvoie une {{jsxref("promise", "promesse")}} qui se résoud en une {{domxref("USVString")}} (texte).File
en un flux (stream) et le lit en entier. Retourne une {{jsxref("promise", "promesse")}} qui se résoud en un {{domxref("ArrayBuffer")}}.Spécification | Statut | Commentaire |
---|---|---|
{{SpecName('File API')}} | {{Spec2('File API')}} | Définition initiale. |
{{Compat("api.File")}}
Cu.importGlobalProperties(['File']);
File
pour spécifier le fichier à référencer.new File
pour créer des objets File
depuis des composants XPCOM au lieu de devoir instancier les objets {{interface("nsIDOMFile")}} directement. Contrairement à {{domxref("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 );