LocalFileSystemSync

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

The LocalFileSystemSync interface of the File System API gives you access to a sandboxed file system. It is intended to be used with WebWorkers. The methods are implemented by worker objects.

この文書について

このドキュメントは 2012年3月2日に最後に更新され、2011年4月19日に作成された W3C の仕様 (作業中のドラフト) に準拠しています。

この仕様は現在放棄されており、大きな牽引力を得ることはできません。

基本概念

Web Worker 内から LocalFileSystemSync オブジェクトを要求することで、サンドボックス化されたファイルシステムへのアクセスを要求することができます。window オブジェクトの requestFileSystemSync() メソッドと resolveLocalFileSystemSyncURL() メソッドのグローバル メソッドは、Worker のグローバル スコープに公開されます。window.requestFileSystemSync() を呼び出すと、Web アプリのための新しいストレージが作成されます。

より多くの概念については、非同期APIの対応する記事を参照してください。

// ブラウザ固有のプレフィックスの扱い
window.requestFileSystemSync  = window.requestFileSystemSync || window.webkitRequestFileSystemSync;

// The first parameter defines the type of storage: persistent or temporary
// Next, set the size of space needed (in bytes)
// initFs is the success callback
// And the last one is the error callback
// for denial of access and other errors. 

var fs = requestFileSystemSync(TEMPORARY, 1024*1024 /*1MB*/);

同期APIを使用しているので、成功とエラーのコールバックは必要ありません。

メソッド概要

FileSystemSync requestFileSystemSync (in unsigned short type, in long long size) raises FileException;
EntrySync resolveLocalFileSystemSyncURL (in DOMString url) raises FileException;

定数

定数 説明
TEMPORARY 0

ブラウザの裁量で削除できる過渡的なストレージ。

PERSISTENT 1 ユーザーやアプリが削除しない限り、ブラウザに残るストレージ。

メソッド

requestFileSystemSync()

データが保存されるべきファイルシステムを要求します。このグローバル メソッド window.requestFileSystemSync() を使用して、Web ワーカー内から LocalFileSystemSync オブジェクトを要求することで、サンドボックス化されたファイルシステムにアクセスします。[ RESEARCH ]

FileSystemSync requestFileSystemSync(
  in unsigned short type, 
  in unsigned long long size  
);
パラメータ
type
ファイルシステムのストレージタイプ。値は、TEMPORARY または PERSISTENT のいずれかです。
size
アプリに必要なストレージ容量 (バイト単位)。
戻り値
FileSystemSync
ファイルシステムを表すオブジェクト。
例外

このメソッドは、以下のコードで FileException が発生する可能性があります。

例外 説明
SECURITY_ERROR このアプリケーションは、ファイルシステムインターフェイスにアクセスする権限を持っていません。例えば、file:// からは実行できません。詳細については、基本的な考え方の記事を参照してください。

resolveLocalFileSystemSyncURL()

ローカル URL で参照されたファイルやディレクトリの Entry を検索します。

void resolveLocalFileSystemURL(
  in DOMString url  
);
パラメータ
url
ファイルシステム内のローカルファイルの URL。
戻り値
EntrySync
ファイルシステム内のエントリを表すオブジェクト。
例外

このメソッドは、以下のコードで FileException が発生する可能性があります。

例外 説明
ENCODING_ERR URL の構文が無効でした。
NOT_FOUND_ERR URL は構造的には正しいのですが、存在しないリソースを参照しています。
SECURITY_ERR このアプリケーションは、ファイルシステムインターフェイスにアクセスする権限を持っていません。

ブラウザの互換性

No compatibility data found. Please contribute data for "api.LocalFileSystemSync" (depth: 1) to the MDN compatibility data repository.

あわせて参照

Specification:File API: Directories and System SpecificationWD

Reference: File System API

Introduction: Basic Concepts About the File System API