Mozilla's getting a new look. What do you think? https://mzl.la/brandsurvey

FileReader

概要

FileReader オブジェクトを使うと、ユーザのコンピュータ内にあるファイル(もしくはバッファ上の生データ)を Web アプリケーションから非同期的に読み込むことが出来ます。読み込むファイルやデータは File ないし Blob オブジェクトとして指定します。

File オブジェクトを取得するには、ユーザが <input> 要素でファイルを選択した際に得られる FileList オブジェクト、またはドラッグ&ドロップによる DataTransfer オブジェクト、他には HTMLCanvasElementmozGetAsFile() API を用いると良いでしょう。

コンストラクタ

FileReader FileReader();

詳細や例については Web アプリケーションからファイルを扱う を参照してください。

プロパティ

FileReader.error 読取専用
ファイルの読込中に生じたエラーを示す DOMError です。
FileReader.readyState 読取専用
FileReader の状態を表す数値です。状態定数 (State constants)のうちの一つが入ります。
FileReader.result 読取専用
読み込んだファイルの内容です。このプロパティは読み込みが終了した後に有効になり、プロパティのデータ型は読込処理を行うメソッドによって変わります。

イベントハンドラ

FileReader.onabort
abort イベントのハンドラです。読込処理が中断されたときにイベントが発生します。
FileReader.onerror
error イベントのハンドラです。読込中にエラーが生じたときにイベントが発生します。
FileReader.onload
load イベントのハンドラです。読込が成功したときにイベントが発生します。
FileReader.onloadstart
loadstart イベントのハンドラです。読込が開始されたときにイベントが発生します。
FileReader.onloadend
loadend イベントのハンドラです。読込が(成功・失敗によらず)終了したときにイベントが発生します。
FileReader.onprogress
progress イベントのハンドラです。Blob コンテンツの読込中にイベントが発生します。

注釈: FileReaderEventTarget を継承しているため、これらのイベントはすべて addEventListener メソッドでも受け取ることが出来ます。

状態定数 (State constants)

  • EMPTY   : 0 : まだデータは何も読み込まれていません。
  • LOADING : 1 : データを読み込んでいます。
  • DONE    : 2 : 読込処理がすべて終了しました。

メソッド

FileReader.abort()
読込処理を中断します。結果として readyStateDONE に変わります。
FileReader.readAsArrayBuffer()
指定された Blob オブジェクトを読み込みます。終了後の result プロパティには、バッファに読み込まれた生のバイナリデータを指す ArrayBuffer が格納されます。
FileReader.readAsBinaryString()
指定された Blob オブジェクトを読み込みます。終了後の result プロパティには、生のバイナリデータを文字列で解釈したものが格納されます。
【訳注: 現在このメソッドは2012年7月12日付の W3C 草案に従って廃止されています。】
FileReader.readAsDataURL()
指定された Blob オブジェクトを読み込みます。終了後の result プロパティには、ファイルのデータを示す data: URL が格納されます。
FileReader.readAsText()
指定された Blob オブジェクトを読み込みます。終了後の result プロパティには、生のバイナリデータを文字列で解釈したものが格納されます。

仕様

仕様 状況 備考
File API
The definition of 'FileReader' in that specification.
草案 Initial definition.

ブラウザ実装状況

機能 Firefox (Gecko) Chrome Internet Explorer* Opera* Safari
基本サポート 3.6 (1.9.2) 7 10 12.02 6.0.2
機能 Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
基本サポート 32 3 10 11.5 6.1

実装に関する注記

Gecko に関する注記

  • Gecko 2.0 beta 7 (Firefox 4.0 beta 7) 以前では、以下に示す Blob パラメータはすべて File パラメータでした。現在では仕様通りに修正されています。
  • Gecko 13.0 (Firefox 13.0 / Thunderbird 13.0 / SeaMonkey 2.10) 以前では FileReader.error プロパティは FileError オブジェクトを返します。現在では最新の FileAPI 草案通りに修正され、DOMError オブジェクトを返します。

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: clariroid
 最終更新者: clariroid,