非標準
この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

廃止
この機能は廃止されました。まだいくつかのブラウザーで動作するかもしれませんが、いつ削除されてもおかしくないので、使わないようにしましょう。

File System API では、FileException オブジェクトは、同期 API を使用してファイルシステムにアクセスする際に発生する可能性のあるエラー状態を表します。File Writer で説明されている FileException インターフェイスを拡張し、いくつかの新しいエラーコードを追加します。

基本のコンセプト

同期 API にはエラーコールバックがないため、エラーを捕捉することが困難です。この API で WebWorkers を使用することの複雑さが増すと、デバッグがさらに困難になります。簡単にするには、worker コードを try/catch でラップしてください。エラーが発生した場合は、次のように postMessage() を使用してメインアプリに転送します。

function onError(e) {
  postMEssage('ERROR:' + e.toString());
}

try {
  //Error is thrown if "log.txt" already exists.
var fileEntry = fs.root.getFile('log.txt', {create: true, exclusive:true}0;
} catch (e) {
  onErrror(e);
} 

HTML5Rocks からサンプルコードを借用しました

属性

属性 タイプ 説明
code unsigned short 条件に最も適切なエラーコード。

定数

註: 定数の数値には依存しないでください。仕様の変更に伴い変更される可能性があります。代わりに定数名を使用してください。

定数 説明
ENCODING_ERR 5 URL の形式が正しくありません。URL が完全で有効であることを確認してください。
INVALID_MODIFICATION_ERR 9 要求された変更は許可されていません。無効な変更の例としては、ディレクトリを自身の子に移動すること、または名前を変更せずに親ディレクトリにファイルを移動することが含まれます。
INVALID_STATE_ERR 7 インターフェイスオブジェクトの現在の状態で操作を実行することはできません。たとえば、インターフェイスオブジェクトにキャッシュされた状態は、ディスクから最後に読み取られた後に変更されているなどです。
NO_MODIFICATION_ALLOWED_ERR 6 ベースとなるファイルシステムの状態により、ファイルまたはディレクトリへの書き込みが許可されていません。
NOT_FOUND_ERR 1 操作が処理された時点で、必要なファイルまたはディレクトリが見つかりませんでした。たとえば、ファイルが存在せず、開かれている場合です。
NOT_READABLE_ERR 4

ファイルまたはディレクトリを読み取ることはできません。通常、ファイルへの参照が取得された後に発生するアクセス許可の問題が原因です (たとえば、ファイルまたはディレクトリが別のアプリケーションによって同時にロックされている場合)。

PATH_EXISTS_ERR 12 同じパスを持つファイルまたはディレクトリが既に存在します。
QUOTA_EXCEEDED_ERR 10

残りのストレージスペースが不足しているか、ストレージクォータに達していて、ユーザーがデータベースにスペースを増やすことを拒否しました。

SECURITY_ERR 2

ファイルへのアクセスは、次のいずれかの理由で拒否されました。

  • これらのファイルは、Web アプリケーション内でアクセスするには安全でない可能性があります。
  • ファイルリソースの呼び出しが多すぎます。
  • その他の不特定のセキュリティエラーコードまたは状況。
TYPE_MISMATCH_ERR 11 ユーザーがファイルまたはディレクトリを検索しようとしましたが、見つかったエントリのタイプが間違っています。たとえば、ユーザーが FileEntry を要求しているときに、アプリケーションは DirectoryEntry にアクセスしている場合です。

ブラウザの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
FileException
非推奨非標準
Chrome 未対応 13 — 29
接頭辞付き
未対応 13 — 29
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 未対応 なしFirefox 未対応 なしIE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 18 — 29
接頭辞付き
未対応 18 — 29
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 未対応 なしFirefox Android 未対応 なしOpera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android ?

凡例

未対応  
未対応
実装状況不明  
実装状況不明
非標準。ブラウザー間の互換性が低い可能性があります。
非標準。ブラウザー間の互換性が低い可能性があります。
非推奨。新しいウェブサイトでは使用しないでください。
非推奨。新しいウェブサイトでは使用しないでください。
使用するには、ベンダー接頭辞または異なる名前が必要です。
使用するには、ベンダー接頭辞または異なる名前が必要です。

あわせて参照

仕様: File API: Directories and System SpecificationWD

リファレンス: File System API

イントロダクション: Basic Concepts About the File System API

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

このページの貢献者: mdnwebdocs-bot, silverskyvicto
最終更新者: mdnwebdocs-bot,