--- title: File slug: Web/API/File tags: - API - File API - Interfaz - Referencia - Web translation_of: Web/API/File ---
La interfaz File provee información acerca de los archivos y permite que el código JavaScript en una página web tenga acceso a su contenido.
Los objetos File son generalmente recuperados a través de un objeto {{domxref("FileList")}} retornado como resultado de un usuario seleccionado archivos por medio de un elemento {{ HTMLElement("input") }} , desde las operaciones drag y drop de un objeto {{domxref("DataTransfer")}} , o desde la API mozGetAsFile() en un {{ domxref("HTMLCanvasElement") }}. En Gecko, desde código con privilegios es posible crear objetos File representando cualquier archivo local sin esperar la interacción del usuario (ver {{anch("Implementation notes")}} para más información.)
Un objeto File es una especie específica de {{DOMxRef("Blob")}}, y puede ser utilizada en cualquier contexto que un Blob puede ser usado. En particular, {{DOMxRef("FileReader")}}, {{DOMxRef("URL.createObjectURL()")}}, {{DOMxRef("ImageBitmapFactories.createImageBitmap()", "createImageBitmap()")}}, y {{DOMxRef("XMLHttpRequest", "", "send()")}} aceptan tanto Blobs y Files.
Ver Utilizando archivos desde aplicaciones web (Using files from web applications) para más información y ejemplos.
{{InheritanceDiagram}}
File.Date) de modificación del archivo referenciada por el objeto File.File.File implementa {{DOMxRef("Blob")}}, así que también cuenta con las siguientes propiedades:
La interfaz File no define algún método, pero los hereda de la interfaz {{domxref("Blob")}}:
Blob conteniendo la información en el rango especificado de bytes de la fuente Blob.File en un {{DOMxRef("ReadableStream")}} que puede ser usado para leer el contenido de File.File en una corriente (stream) para leerse hasta completarse. Retorna una promesa que se resuelve con un {{DOMxRef("USVString")}} (texto).File en una corriente y leerlo hasta completarse. Devuelve una promesa que resuelve con un {{DOMxRef("ArrayBuffer")}}.| Especificación | Estado | Comentario |
|---|---|---|
| {{SpecName('File API')}} | {{Spec2('File API')}} | Definición inicial. |
{{Compat("api.File")}}
File para especificar el archivo a referenciar.new File para la creación de objetos File a partir de código de componentes XPCOM en lugar de tener que instanciar el objeto {{interface("nsIDOMFile")}} directamente. El constructor toma, en contraste a Blob, un segundo argumento como nombre de archivo. El nombre de archivo puede ser cualquier String.
File File( Array parts, String filename, BlobPropertyBag properties );