FileReader

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

O objeto FileReader permite que aplicativos da web leiam de forma assíncrona o conteúdo de arquivos (ou buffers de dados brutos) armazenados no computador do usuário, usando File ou Blob objetos para especificar o arquivo ou dados a serem lidos.

Objetos de arquivo podem ser obtidos de um objeto FileList retornado como resultado de um usuário selecionar arquivos usando o elemento <input> ou de uma operação de arrastar e soltar DataTransfer objeto.

O FileReader só pode acessar o conteúdo dos arquivos que o usuário selecionou explicitamente, usando um elemento HTML <input type="file"> ou arrastando e soltando. Ele não pode ser usado para ler um arquivo por nome de caminho do sistema de arquivos do usuário. Para ler arquivos no sistema de arquivos do cliente por nome de caminho, use a API de acesso ao sistema de arquivos. Para ler arquivos do lado do servidor, use soluções Ajax padrão, com permissão CORS se estiver lendo entre domínios.

Nota: This feature is available in Web Workers.

EventTarget FileReader

Construtor

FileReader()

Retorna um FileReader recém-construído.

Consulte Usando arquivos de aplicativos da Web para obter detalhes e exemplos.

Propriedades da instância

FileReader.error Somente leitura

Um DOMException representando o erro que ocorreu durante a leitura do arquivo.

FileReader.readyState Somente leitura

Um número que indica o estado do FileReader. Este é um dos seguintes:

Nome Valor Descrição
EMPTY 0 Nenhum dado foi carregado ainda.
LOADING 1 Os dados estão sendo carregados no momento.
'DONE' 2 Toda a solicitação de leitura foi concluída.
FileReader.result Somente leitura

o conteúdo do arquivo. Esta propriedade só é válida após a conclusão da operação de leitura, e o formato dos dados depende de qual dos métodos foi utilizado para iniciar a operação de leitura.

Métodos de instância

FileReader.abort()

Aborta a operação de leitura. Ao retornar, o readyState será DONE.

FileReader.readAsArrayBuffer()

Inicia a leitura do conteúdo do Blob especificado, uma vez finalizado, o atributo result contém um ArrayBuffer representando os dados do arquivo.

FileReader.readAsBinaryString()

Inicia a leitura do conteúdo do Blob especificado, uma vez concluído, o atributo result contém os dados binários brutos do arquivo como uma string.

FileReader.readAsDataURL()

Inicia a leitura do conteúdo do Blob especificado, uma vez finalizado, o atributo result contém uma URL data: representando os dados do arquivo.

FileReader.readAsText()

Inicia a leitura do conteúdo do Blob especificado, uma vez terminado, o atributo result contém o conteúdo do arquivo como uma string de texto. Um nome de codificação opcional pode ser especificado.

Eventos

Ouça esses eventos usando addEventListener() ou atribuindo um ouvinte de eventos à propriedade oneventname desta interface. Remova os ouvintes de eventos com removeEventListener(), uma vez que FileReader não seja mais usado, para evitar vazamentos de memória.

abort

Acionado quando uma leitura foi abortada, por exemplo, porque o programa chamou FileReader.abort().

error

Acionado quando a leitura falhou devido a um erro.

load

Disparado quando uma leitura foi concluída com sucesso.

loadend

Acionado quando uma leitura foi concluída, com sucesso ou não.

loadstart

Disparado quando uma leitura é iniciada.

progress

Acionado periodicamente à medida que os dados são lidos.

Especificações

Specification
File API
# APIASynch

Compatibilidade do navegador

BCD tables only load in the browser

Veja também