--- title: File slug: Web/API/File tags: - API - File API - Interfaz - Referencia - Web translation_of: Web/API/File ---
{{APIRef }}

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}}

Constructor

{{domxref("File.File", "File()")}}
Retorna un nuevo objeto de tipo File.

Propiedades

{{DOMxRef("File.lastModified")}}{{ReadOnlyInline}}
Retorna el último tiempo que el archivo se modifico, en milisegundos desde la época de UNIX (1 de enero de 1970 a medianoche).
{{DOMxRef("File.lastModifiedDate")}} {{Deprecated_Inline}}{{ReadOnlyInline}} {{Gecko_MinVersion_Inline("15.0")}}
Retorna la última fecha (en un objeto {{JSxRef("Date")}}Date) de modificación del archivo referenciada por el objeto File.
{{DOMxRef("File.name")}}{{ReadOnlyInline}}
Retorna el nombre del archivo referenciada por el objeto File.
{{DOMxRef("File.webkitRelativePath")}} {{Non-standard_Inline}}{{ReadOnlyInline}}
Retorna la ruta relativa de la URL del {{DOMxRef("File")}}.

File implementa {{DOMxRef("Blob")}}, así que también cuenta con las siguientes propiedades:

{{DOMxRef("File.size")}}{{ReadOnlyInline}}
Retorna el tamaño del archivo en bytes.
{{DOMxRef("File.type")}}{{ReadOnlyInline}}
Retorna el tipo MIME del archivo.

Métodos

La interfaz File no define algún método, pero los hereda de la interfaz {{domxref("Blob")}}:

{{DOMxRef("Blob.slice()", "Blob.slice([start[, end[, contentType]]])")}}
Retorna un nuevo objeto Blob conteniendo la información en el rango especificado de bytes de la fuente Blob.
{{DOMxRef("Blob.stream()")}}
Transforma el archivo File en un {{DOMxRef("ReadableStream")}} que puede ser usado para leer el contenido de File.
{{DOMxRef("Blob.text()")}}
Transforma el archivo File en una corriente (stream) para leerse hasta completarse. Retorna una promesa que se resuelve con un {{DOMxRef("USVString")}} (texto).
{{DOMxRef("Blob.arrayBuffer()")}}
Transforma el archivo File en una corriente y leerlo hasta completarse. Devuelve una promesa que resuelve con un {{DOMxRef("ArrayBuffer")}}.

Especificaciones

Especificación Estado Comentario
{{SpecName('File API')}} {{Spec2('File API')}} Definición inicial.

Compatibilidad en Navegadores

{{Compat("api.File")}}

Notas de Implementación

Ver también