FileReader
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 (en-US). Para ler arquivos do lado do servidor, use soluções Ajax padrão, com permissão CORS se estiver lendo entre domínios.
Note: This feature is available in Web Workers
Construtor
FileReader()
-
Retorna um
FileReader
recém-construído.
Consulte Usando arquivos de aplicativos da Web (en-US) para obter detalhes e exemplos.
Propriedades da instância
FileReader.error
(en-US) Somente leitura-
Um
DOMException
(en-US) representando o erro que ocorreu durante a leitura do arquivo. FileReader.readyState
(en-US) 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
(en-US) 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()
(en-US)-
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 atributoresult
contém umArrayBuffer
representando os dados do arquivo. FileReader.readAsBinaryString()
-
Inicia a leitura do conteúdo do
Blob
especificado, uma vez concluído, o atributoresult
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 atributoresult
contém uma URLdata:
representando os dados do arquivo. FileReader.readAsText()
-
Inicia a leitura do conteúdo do
Blob
especificado, uma vez terminado, o atributoresult
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
(en-US)-
Acionado quando uma leitura foi abortada, por exemplo, porque o programa chamou
FileReader.abort()
(en-US). error
(en-US)-
Acionado quando a leitura falhou devido a um erro.
load
-
Disparado quando uma leitura foi concluída com sucesso.
loadend
(en-US)-
Acionado quando uma leitura foi concluída, com sucesso ou não.
loadstart
(en-US)-
Disparado quando uma leitura é iniciada.
progress
(en-US)-
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
- Usando arquivos de aplicativos da web (en-US)
File
Blob
FileReaderSync
(en-US){ APIRef("File API")}}
Resumo
O objeto FileReader
permite aplicações web ler assincronamente o conteúdo dos arquivos (ou buffers de dados puros) do computador do usuário, utilizando o objeto File
ou Blob
para especificar o arquivo ou os dados a serem lidos.
Objetos File podem ser obtidos a partir de um objeto FileList
retornado como resultado da seleção de um usuário utilizando um elemento <input>
, a partir de uma operação de drag and drop DataTransfer
, ou a partir de um mozGetAsFile()
da api HTMLCanvasElement
(en-US).
Construtor
FileReader FileReader();
Veja Using files from web applications para detalhes e exemplos.
Propriedades
FileReader.error
(en-US) Somente leitura-
Um
DOMError
(en-US) representa o erro que ocorreu durante a leitura do arquivo. FileReader.readyState
(en-US) Somente leitura-
Um número indicando o estado do
FileReader
. Este poderá ser um dos seguintes estados State constants. FileReader.result
(en-US) Somente leitura-
O conteúdo do arquivo. Esta propriedade é válida apenas após a operação de leitura estar completa, e o formato dos dados dependem de qual método foi usado para iniciar a operação de leitura.
Manipuladores de eventos
FileReader.onabort
(en-US)-
Um manipulador para o evento
abort (en-US)
. Este evento é chamado cada vez que a operação de leitura é abortada. FileReader.onerror
(en-US)-
Um manipulador para o evento
error (en-US)
. Este evento é chamado cada vez que a operação de leitura encontra um erro. FileReader.onload
-
Um manipulador para o evento
load (en-US)
. Este evento é chamado cada vez que a operação de leitura é completada com sucesso. FileReader.onloadstart
-
Um manipulador para o evento
loadstart (en-US)
. Este evento é chamado cada vez que a leitura começa. FileReader.onloadend
-
Um manipulador para o evento
loadend (en-US)
. Este evento é chamado cada vez que a operação de leitura é completada (tanto em caso de sucesso quanto de erro). FileReader.onprogress
-
Um manipulador para o evento
progress (en-US)
. Este evento é chamado durante a leitura do conteúdo deBlob
.
Nota: Nota: O FileReader
herda de EventTarget
, todos estes eventos podem ser listados usando o método addEventListener
.
Constantes de estado
EMPTY
:0
: Nenhum dado foi carregado ainda.LOADING
:1
: Os dados estão sendo carregados.DONE
:2
: Toda a requisição de leitura foi completada.
Métodos
FileReader.abort()
(en-US)-
Aborta a operação de leitura. O retorno, no
readyState
seráDONE
. FileReader.readAsArrayBuffer()
-
Inicia a leitura do conteúdo do
Blob
espeficado, uma vez finalizado, o atributoresult
conterá umArrayBuffer
representando os dados do arquivo. FileReader.readAsBinaryString()
-
Inicia a leitura do conteúdo do
Blob
especificado, uma vez finalizado, o atributoresult
conterá os dados raw binários do arquivo como string. FileReader.readAsDataURL()
-
Inicia a leitura do conteúdo do
Blob
especificado, uma vez finalizado, o atributoresult
conterá umdata:
URL representando os dados do arquivo. FileReader.readAsText()
-
Inicia a leitura do conteúdo do
Blob
especificado, uma vez finalizado, o atributoresult
conterá o conteúdo do arquivo como string de texto.
Especificações
Specification |
---|
File API # APIASynch |
Compatibilidade com navegadores
BCD tables only load in the browser