--- title: FileException slug: Web/API/FileException tags: - API - File API - File System API - オフライン - ファイルシステム - リファレンス - 廃止 - 非標準 translation_of: Web/API/FileException ---
{{APIRef("File System API")}}{{Non-standard_Header}}{{Obsolete_Header}}

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 条件に最も適切なエラーコード。

定数

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

定数 説明
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 にアクセスしている場合です。

ブラウザの互換性

{{Compat("api.FileException")}}

あわせて参照

仕様: {{spec("http://dev.w3.org/2009/dap/file-system/pub/FileSystem/", "File API: Directories and System Specification", "WD")}}

リファレンス: File System API

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