FileReader

Sumario

 

El objeto FileReader permite que las aplicaciones web lean ficheros (o información en buffer) almacenados en el cliente de forma asíncrona, usando los objetos File o Blob dependiendo de los datos que se pretenden leer.

El objeto File puede ser obtenido desde un objeto FileList devuelto como resultado de la selección de archivos por parte del usuario en un elemento <input>, desde el objeto DataTransfer producido por una operación de arrastre (drag and drop) o desde la API mozGetAsFile () en un HTMLCanvasElement.

Constructor

FileReader FileReader();

Mira el artículo Using files from web applications para más detalles y ejemplos.

Propiedades

FileReader.error Read only
A DOMError representing the error that occurred while reading the file.
FileReader.readyState Read only
Devuelve un entero que indica el estado de FileReader. Puede ser uno de los siguientes:
EMPTY 0 No ha sido leido ningún dato aún.
LOADING 1 La información está siendo leída.
DONE 2 Se ha completado la solicitud de lectura.
FileReader.result Read only
El contenido del fichero. Esta propieda es válida solo cuando la propiedad FileReader.readyState es 2, es decir, cuando la lectura ha finalizado. El formato de la información depende de los métodos usados al iniciar la operación de lectura.

Controladores de eventos

FileReader.onabort
Un controlador para el evento abort. Este evento se activa cada vez que se interrumpe la operación de lectura.
FileReader.onerror
Un controlador para el evento error. Este evento se activa cada vez que la operación de lectura encuentra un error.
FileReader.onload
Un controlador para el evento load. Este evento se activa cada vez que la operación de lectura se ha completado satisfactoriamente.
FileReader.onloadstart
Un controlador para el evento loadstart. Este evento se activa cada vez que comienza la lectura.
FileReader.onloadend
Un controlador para el evento loadend. Este evento se activa cada vez que  la operación de lecura se ha completado (ya sea con éxito o fallo).
FileReader.onprogress
Un controlador para el evento progress. Este evento se activa mientras se está leyendo el contenido del objeto Blob.

Nota: Como FileReader hereda de EventTarget, todos esos eventos también pueden ser escuchados usando el método addEventListener.

 

Métodos

FileReader.abort()
Interrumpe la operación de lectura. A su regreso readyState será DONE.
FileReader.readAsArrayBuffer()
Comienza la lectura del contenido del objeto Blob especificado, una vez terminada, el atributo result contiene un  ArrayBuffer representando los datos del fichero.
FileReader.readAsBinaryString()
Comienza la lectura del contenido del objeto Blob, una vez terminada, el atributo result contiene los datos binarios en bruto del archivo como una cadena.
FileReader.readAsDataURL()
Comienza la lectura del contenido del objeto Blob, una vez terminada, el atributo result contiene un data: URL que representa los datos del fichero.
FileReader.readAsText()
Comienza la lectura del contenido del objeto Blob, una vez terminada, el atributo result contiene el contenido del fichero como una cadena de texto.

Especificaciones

Especificación Estado Comentario
File API
The definition of 'FileReader' in that specification.
Working Draft Definición inicial.

Soporte en los navegadores

Característica Firefox (Gecko) Chrome Internet Explorer* Opera* Safari
Soporte básico 3.6 (1.9.2) 7 10 12.02 6.0.2
Característica Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
Soporte básico 32 3 10 11.5 6.1

Notas de implementación

Notas específicas para Gecko

  • Antes de Gecko 2.0 beta 7 (Firefox 4.0 beta 7), todos los parámetros Blob de a continuación eran parámetros File; esto ya se ha actualizado para que coincida con la especificación correcta.
  • Antes de Gecko 13.0 (Firefox 13.0 / Thunderbird 13.0 / SeaMonkey 2.10) la propiedad FileReader.error devolvía un objeto FileError. Esta interface ha sido eliminada y FileReader.error ahora devielve el objeto DOMError tal y como se define en el último borrador de FileAPI.

See also

Etiquetas y colaboradores del documento

 Colaboradores en esta página: V.Morantes, israelfl, Carlos-T, Clunaenc, fscholz, cm_rocanroll
 Última actualización por: V.Morantes,