---
title: FileReader
slug: Web/API/FileReader
tags:
- API
- File API
- Files
- Interface
- Reference
translation_of: Web/API/FileReader
---
{{APIRef("File API")}}
FileReader
객체는 웹 애플리케이션이 비동기적으로 데이터를 읽기 위하여 읽을 파일을 가리키는{{ domxref("File") }} 혹은 {{ domxref("Blob") }} 객체를 이용해 파일의 내용을(혹은 raw data버퍼로) 읽고 사용자의 컴퓨터에 저장하는 것을 가능하게 해줍니다.
File 객체는 {{ HTMLElement("input") }} 태그를 이용하여 유저가 선택한 파일들의 결과로 반환된 {{ domxref("FileList") }} 객체, 드래그 앤 드랍으로 반환된 DataTransfer
객체 혹은 {{ domxref("HTMLCanvasElement") }}의 mozGetAsFile()
API로 부터 얻습니다.
생성자
- {{domxref("FileReader.FileReader", "FileReader()")}}
- Returns a newly constructed
FileReader
.
See Using files from web applications for details and examples.
속성
- {{domxref("FileReader.error")}} {{readonlyinline}}
- {{domxref("DOMError")}} 파일을 읽는 도중에 발생한 에러를 나타냅니다.
- {{domxref("FileReader.readyState")}} {{readonlyinline}}
FileReader의 상태를 나타내는 숫자입니다
.
-
상태 값들
EMPTY
: 0
: 아직 데이터가 로드 되지 않았음.
LOADING
: 1
: 데이터가 로딩 중.
DONE
: 2
: 모든 읽기 요청이 완료됨.
-
- {{domxref("FileReader.result")}} {{readonlyinline}}
- 파일의 컨텐츠입니다. 이 속성은 읽기 작업이 완료되고 읽기 작업의 초기화에 사용한 방식으로 결정된 데이터의 포맷이 정해진 후에 유효합니다.
이벤트 핸들러
- {{domxref("FileReader.onabort")}}
- {{event("abort")}} 이벤트의 핸들러. 이 이벤트는 읽기 동작이 중단 될 때마다 발생합니다.
- {{domxref("FileReader.onerror")}}
- {{event("error")}} 이벤트의 핸들러. 이 이벤트는 읽기 동작에 에러가 생길 때마다 발생합니다.
- {{domxref("FileReader.onload")}}
- {{event("load")}} 이벤트의 핸들러. 이 이벤트는 읽기 동작이 성공적으로 완료 되었을 때마다 발생합니다.
- {{domxref("FileReader.onloadstart")}}
- {{event("loadstart")}} 이벤트 핸들러. 이 이벤트는 읽기 동작이 실행 될 때마다 발생합니다.
- {{domxref("FileReader.onloadend")}}
- {{event("loadend")}} 이벤트 핸들러. 이 이벤트는 읽기 동작이 끝났을 때마다 발생합니다. (읽기의 성공이나 실패 여부는 상관 않습니다.)
- {{domxref("FileReader.onprogress")}}
- {{event("progress")}} 이벤트 핸들러. 이 이벤트는 {{domxref("Blob")}} 컨텐트를 읽는 동안 호출됩니다.
참고: FileReader
는 {{domxref("EventTarget")}} 으로 부터 상속 받았습니다, 언급된 모든 이벤트들은 {{domxref("EventTarget.addEventListener()","addEventListener")}} 메소드를 사용하여 listen 하게 할 수 있습니다.
메서드
- {{domxref("FileReader.abort()")}}
- 읽기 요청을 중단시킵니다. 리턴이 되면 readyState 는 DONE이 됩니다.
- {{domxref("FileReader.readAsArrayBuffer()")}} {{ gecko_minversion_inline("7.0") }}
- Starts reading the contents of the specified {{ domxref("Blob") }}, once finished, the
result
attribute contains an {{domxref("ArrayBuffer")}} representing the file's data.
- {{domxref("FileReader.readAsBinaryString()")}}
- Starts reading the contents of the specified {{ domxref("Blob") }}, once finished, the
result
attribute contains the raw binary data from the file as a string.
- {{domxref("FileReader.readAsDataURL()")}}
- Starts reading the contents of the specified {{ domxref("Blob") }}, once finished, the
result
attribute contains a data:
URL representing the file's data.
- {{domxref("FileReader.readAsText()")}}
- Starts reading the contents of the specified {{ domxref("Blob") }}, once finished, the
result
attribute contains the contents of the file as a text string.
명세
Specification |
Status |
Comment |
{{SpecName('File API','#FileReader-interface','FileReader')}} |
{{Spec2('File API')}} |
Initial definition. |
브라우저 호환성
{{Compat("api.FileReader")}}
같이 보기