applican

マイページに戻る

DirectoryEntry ver.2.0

ファイルシステム上のディレクトリを取得または作成する際のオプション項目です。

アプリカンAPIのver.2.0系のFileSystemのDirectoryEntryのリファレンスです

  1. アプリカンAPIのver.1.0系のFileSystemのDirectoryEntryのリファレンスはこちらからご確認ください。

プロパティ

fileSystem : FileSystem FileSystemです。
fullPath : String ルートディレクトリからこのディレクトリを含むフルパスです。
isDirectory : Boolean Entryがディレクトリかを表します。
isFile : Boolean Entryがファイルかを表します。
name : String パス情報を含まないディレクトリ名です。

メソッド

ver.2.0用

copyTo

メソッド説明

copyTo(DirectoryEntry or FileEntry entry, String name, Function<DirectoryEntry> successCallback, Function<FileError> errorCallback)

ディレクトリをコピーします。

パラメータ

entry : DirectoryEntry or FileEntry コピー先のディレクトリを指定します。
name : String コピー時の新しい名前を指定します。(未指定の場合は現在の名前を利用します)
successCallback : Function<DirectoryEntry> ディレクトリをコピー出来た場合にCallbackされます。
errorCallback : Function<FileError> ディレクトリのコピーに失敗した場合にCallbackされます。

Return

void

ver.2.0用サンプルコード

//ファイルシステムを取得
function copyTo() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, copyToGotFS, copyToError);
}

//DirectoryEntry取得
function copyToGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", null, copyToGetDirectory, copyToError);
}

//ディレクトリコピー
function copyToGetDirectory(directoryEntry) {
	var tmp = directoryEntry.fullPath;
	var parentPath = tmp.substring(0, tmp.lastIndexOf("/"));
	var parentName = parentPath.substring(parentPath.lastIndexOf("/") + 1);
	var parentEntry = new applican.filesystem.createDirectoryEntry(parentName, parentPath);

	directoryEntry.copyTo(parentEntry, "newDir3", copyToSuccess, copyToError);
}

//ディレクトリコピー成功時のcallback処理
function copyToSuccess(entry) {
	var dump = "ディレクトリをコピーしました。\n";
	dump    += "name : "     + entry.name     + "\n";
	dump    += "fullPath : " + entry.fullPath + "\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//ディレクトリコピー失敗時のcallback処理
function copyToError(error) {
	var dump = "ディレクトリのコピーに失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
filesystem.requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

createReader

メソッド説明

ディレクトリに含まれるファイルとディレクトリを取得するオブジェクトを作成します。

createReader() : DirectoryReader

ver.2.0用サンプルコード

//ファイルシステムを取得
function getFileList() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, getFileListGotFS, getFileListError);
}

//指定ディレクトリからファイルを読み込み
function getFileListGotFS(fileSystem) {
	//取得オブジェクトの作成
	var directoryReader = fileSystem.root.createReader();
	directoryReader.readEntries(getFileListReadEntries, getFileListError);
}

//ファイル一覧取得成功時のcallback処理
function getFileListReadEntries(entries) {
	var dump = "ファイル一覧を取得しました。\n";
	document.getElementById("dumpAreaFile").value = dump;

	for(var i = 0; i < entries.length; i++) {
		document.getElementById("dumpAreaFile").value += entries[i].name + (entries[i].isDirectory ? "/" : "" ) + "\n";
	}
}

//ファイル一覧取得失敗時のcallback処理
function getFileListError(error) {
		var dump = "ファイル一覧の取得に失敗しました。: \n" + error + " : " + FileError[error];
		document.getElementById("dumpAreaFile").value = dump;
		alert(dump);
}
filesystem.requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

getDirectory

メソッド説明

getDirectory(String path, DirectoryOptions options, Function<DirectoryEntry> successCallback, Function<FileError> errorCallback)

第一引数で指定したディレクトリ内にあるディレクトリを取得します。
オプションを指定することでディレクトリを作成することもできます。

パラメータ

path : String 取得または作成したいディレクトリまでのパスを指定します。
options : DirectoryOptions ディレクトリを作成に関するオプションを設定します。
{create:true}を設定することでディレクトリの作成ができます。
successCallback : Function<DirectoryEntry> ディレクトリの取得または作成に成功した場合にCallbackされます。
errorCallback : Function<FileError> ディレクトリの取得または作成に失敗した場合にCallbackされます。

Return

void

サンプルコード

//ファイルシステムを取得
function mkdir() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, mkdirGotFS, mkdirError);
}

//DirectoryEntry取得
function mkdirGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", {create: true, exclusive: false}, mkdirGetDirectory, mkdirError);
}

//ディレクトリ作成成功時のcallback処理
function mkdirGetDirectory(directoryEntry) {
	var dump = "ディレクトリを作成しました。\n";
	dump    += "name : "     + directoryEntry.name     + "\n";
	dump    += "fullPath : " + directoryEntry.fullPath + "\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//ディレクトリ作成失敗時のcallback処理
function mkdirError(error) {
	var dump = "ディレクトリの作成に失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

getFile

メソッド説明

getFile(String path, FileOptions options, Function<FileEntry> successCallback, Function<FileError> errorCallback)
第一引数で指定したパスのファイルを取得します。
オプションを指定することでファイルを作成することもできます。

パラメータ

path : String 取得または作成したいファイルまでのパスを指定します。
options : FileOptions ファイル作成に関するオプションを設定します。
{create:true}を設定することでファイルの作成ができます。
successCallback : Function<FileEntry> ファイルの取得または作成に成功した場合にCallbackされます。
errorCallback : Function<FileError> ファイルの取得または作成に失敗した場合にCallbackされます。

Return

void

サンプルコード

//ファイルシステムを取得
function writeFile() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, writeFileGotFS, writeFileError);
}

//ファイルシステムを取得成功時のcallback処理
function writeFileGotFS(fileSystem) {
	//ファイルを作成
	fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, writeFileGotFileEntry, writeFileError);
}

//ファイル取得成功時のcallback処理
function writeFileGotFileEntry(fileEntry) {
	fileEntry.createWriter(writeFileGotFileWriter, writeFileError);
}

//ファイル取得失敗時のcallback処理
function writeFileError(error) {
	var dump = "ファイルの書き込みに失敗しました。\n";
	dump += "code:" + error + "\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//取得したファイルへの書き込み処理
function writeFileGotFileWriter(writer) {
	var dump = "ファイルを書き込みました。\n";
	document.getElementById("dumpAreaFile").value = dump;

	writer.onwritestart = function(evt) {
		document.getElementById("dumpAreaFile").value += "onwritestart\n";
	};
	writer.onabort = function(evt) {
		document.getElementById("dumpAreaFile").value += "onabort\n";
	};
	writer.onwrite = function(evt) {
		document.getElementById("dumpAreaFile").value += "onwrite\n";
	};
	writer.onerror = function(evt) {
		document.getElementById("dumpAreaFile").value += "onerror\n";
	};
	writer.onwriteend = function(evt) {
		document.getElementById("dumpAreaFile").value += "onwriteend\n";
	};

	writer.write("some sample text 1");
}
requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

getParent

メソッド説明

getParent(Function<DirectoryEntry> successCallback, Function<FileError> errorCallback)

親ディレクトリを取得します。

パラメータ

successCallback : Function<DirectoryEntry> 親ディレクトリを取得出来た場合にCallbackされます。
errorCallback : Function<FileError> 親ディレクトリの取得に失敗した場合にCallbackされます。

Return

void

サンプルコード

//ファイルシステムを取得
function getParent() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, getParentGotFS, getParentError);
}

//親ディレクトリのDirectoryEntryを取得
function getParentGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", null, getParentGetDirectory, getParentError);
}

//親ディレクトリを取得
function getParentGetDirectory(directoryEntry) {
	directoryEntry.getParent(getParentSuccess, getParentError);
}

//親ディレクトリを取得成功時のcallback処理
function getParentSuccess(entry) {
	var dump = "親ディレクトリを取得しました。\n";
	dump    += "name : "     + entry.name     + "\n";
	dump    += "fullPath : " + entry.fullPath + "\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//親ディレクトリを取得失敗時のcallback処理
function getParentError(error) {
	var dump = "親ディレクトリの取得に失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

moveTo

メソッド説明

moveTo(DirectoryEntry or FileEntry entry, String name, Function<DirectoryEntry> successCallback, Function<FileError> errorCallback)

ディレクトリを移動します。
移動先に同名のディレクトリが存在する場合は移動先のディレクトリを削除します。

パラメータ

entry : DirectoryEntry 移動先のディレクトリを指定します。
name : String 移動時の新しい名前を指定します。(未指定の場合は現在の名前を利用します)
successCallback : Function<DirectoryEntry> ディレクトリの移動に成功した場合にCallbackされます。
errorCallback : Function<FileError> ディレクトリの移動に失敗した場合にCallbackされます。

Return

void

ver.2.0用サンプルコード

//ファイルシステムを取得
function moveTo() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, moveToGotFS, moveToError);
}

//DirectoryEntry取得
	function moveToGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", null, moveToGetDirectory, moveToError);
}

//ディレクトリ移動
function moveToGetDirectory(directoryEntry) {
	var tmp = directoryEntry.fullPath;
	var parentPath = tmp.substring(0, tmp.lastIndexOf("/"));
	var parentName = parentPath.substring(parentPath.lastIndexOf("/") + 1);
	var parentEntry = applican.filesystem.createDirectoryEntry(parentName, parentPath);

	directoryEntry.moveTo(parentEntry, "newDir2", moveToSuccess, moveToError);
}

//ディレクトリ移動成功時のcallback処理
function moveToSuccess(entry) {
	var dump = "ディレクトリを移動しました。\n";
	dump    += "name : "     + entry.name     + "\n";
	dump    += "fullPath : " + entry.fullPath + "\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//ディレクトリ移動失敗時のcallback処理
function moveToError(error) {
	var dump = "ディレクトリの移動に失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
filesystem.requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

remove

メソッド説明

remove(Function successCallback, Function<FileError> errorCallback)

中身が空のディレクトリを削除します。

パラメータ

successCallback : Function ディレクトリの削除に成功した場合にCallbackされます。
errorCallback : Function<FileError> ディレクトリの削除に失敗した場合にCallbackされます。

Return

void

サンプルコード

//ファイルシステムを取得
function rmdir() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, rmdirGotFS, rmdirError);
}

//DirectoryEntry取得
function rmdirGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", null, rmdirGetDirectory, rmdirError);
}

//ディレクトリ削除
function rmdirGetDirectory(directoryEntry) {
	directoryEntry.remove(removeSuccess, rmdirError);
}

//ディレクトリ削除成功時のcallback処理
function removeSuccess() {
	var dump = "ディレクトリを削除しました。\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//ディレクトリ削除失敗時のcallback処理
function rmdirError(error) {
	var dump = "ディレクトリの削除に失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

removeRecursively

メソッド説明

removeRecursively(Function successCallback, Function<FileError> errorCallback)

ディレクトリ自身を削除します。ディレクトリ内に含まれるファイルも一緒に削除されます。

パラメータ

successCallback : Function ディレクトリの削除に成功した場合にCallbackされます。
errorCallback : Function<FileError> ディレクトリの削除に失敗した場合にCallbackされます。

Return

void

サンプルコード

//ファイルシステムを取得
function rmdirRecursively() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, rmdirRecursivelyGotFS, rmdirRecursivelyError);
}

//DirectoryEntry取得
function rmdirRecursivelyGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", null, rmdirRecursivelyGetDirectory, rmdirRecursivelyError);
}

//ディレクトリ削除
function rmdirRecursivelyGetDirectory(directoryEntry) {
	directoryEntry.removeRecursively(removeRecursivelySuccess, rmdirRecursivelyError);
}

//ディレクトリ削除成功時のcallback処理
function removeRecursivelySuccess() {
	var dump = "ディレクトリを削除しました。\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//ディレクトリ削除失敗時のcallback処理
function rmdirRecursivelyError(error) {
	var dump = "ディレクトリの削除に失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

toURL

メソッド説明

toURL() : String

ディレクトリのパスをアクセス可能なURL形式(file:///...)形式で取得します。

Return

String URL形式の文字列

サンプルコード

//ファイルシステムを取得
function toURL() {
	applican.filesystem.requestFileSystem(LocalFileSystem.PERSISTENT, 0, toURLGotFS, toURLError);
}

//DirectoryEntry取得
function toURLGotFS(fileSystem) {
	fileSystem.root.getDirectory("newDir", null, toURLGetDirectory, toURLError);
}

//ディレクトリのURLを取得する
function toURLGetDirectory(directoryEntry) {
	var directoryURL = directoryEntry.toURL();
	var dump = "ディレクトリのURLを取得しました。\n";
	dump    += "URL : " + directoryURL + "\n";
	document.getElementById("dumpAreaFile").value = dump;
}

//ディレクトリのURLを取得失敗時のcallback処理
function toURLError(error) {
	var dump = "ディレクトリURLの取得に失敗しました: \n" + error + " : " + FileError[error];
	document.getElementById("dumpAreaFile").value = dump;
	alert(dump);
}
requestFileSystemの第二引数には、サイズの指定が入ります。
現状はサイズ指定に未対応の為、どんな値を設定しても、OSが許す範囲まで自由に使えます。

new で生成できなくなった API

DirectoryEntry

// ver.1.0
var entry = new DirectoryEntry();

// ver.2.0
var entry = applican.filesystem.createDirectoryEntry($DIR_NAME, $DIR_PATH);
loading