PhoneGap API中文帮助文档——File(文件)
用于读取、写入和浏览文件系统层次结构的API。对象:
DirectoryEntry
DirectoryReader
File
FileEntry
FileError
FileReader
FileSystem
FileTransfer
FileTransferError
FileUploadOptions
FileUploadResult
FileWriter
Flags
LocalFileSystem
Metadata
DirectoryEntry
该对象代表文件系统中的一个目录,W3C的目录和系统规范对其进行了定义。
属性:
isFile: 总是false。(布尔类型)isFile:总是false。(布尔类型)
isDirectory:总是true。(布尔类型)
name:DirectoryEntry的名称,不包含前置路径。(DOMString类型)
fullPath:从根目录到当前DirectoryEntry的完整绝对路径。(DOMString类型)
备注:以下属性虽然在W3C规范中进行了定义,但PhoneGap并不支持:
filesystem:DirectoryEntry驻留的文件系统。(FileSystem类型)
方法:
DirectoryEntry对象有以下方法可以被调用:
getMetadata: 获得目录的元数据。
moveTo:移动一个目录到文件系统中不同的位置。
copyTo:拷贝一个目录到文件系统中不同的位置。
toURI:返回一个可以定位目录的URI。
remove:删除一个目录,被删除的目录必须是空的。
getParent:查找父级目录。
createReader:创建一个可以从目录中读取条目的新DirectoryReader对象。
getDirectory:创建或查找一个目录。
getFile:创建或查找一个文件。
removeRecursively:删除一个目录以及它的所有内容。
支持的平台:
Android
BlackBerry WebWorks (OS 5.0或更高版本)
iOS
getMetadata:
查找目录的元数据。
参数:
successCallback:获取元数据successCallback:获取元数据成功后回调此函数,参数为一个Metadata 对象。(函数类型)
errorCallback:试图检索元数据发生错误的时候回调此函数,参数为一个FileError对象。(函数类型)
简单的范例:
function success(metadata) {
console.log("Last Modified:" + metadata.modificationTime);
}
function fail(error) {
alert(error.code);
}
// 请求这个条目的元数据对象
entry.getMetadata(success, fail);
复制代码moveTo:
移动一个目录到文件系统中不同的位置。在尝试进行以下操作时会发生错误:
移动目录到其自身,或者移动到其任意深度的任意子目录中;
同级移动(将一个目录移动到它的父目录中)时没有提供和当前名称不同的名称;
移动目录到一个文件所占用的路径;
移动目录到一个非空目录所占用的路径。
另外,尝试移动一个目录到另一个已经存在的空目录上时,系统会尝试删除并替换已存在的目录。
参数:
parent:将目录对象移动到的父级目录。(DirectoryEntry类型)
newName:目录的新名字。如果没有指定,默认为当前名字。(DOMString类型)
successCallback:移动成功后调用的回调函数,参数为移动后的新目录的DirectoryEntry对象。(函数类型)
errorCallback:试图移动目录发生错误时调用的回调函数,参数为一个FileError对象。(函数类型)
简单的范例:
function success(entry) {
console.log("New Path:" + entry.fullPath);
}
function fail(error) {
alert(error.code);
}
function moveDir(entry) {
var parent = document.getElementById('parent').value;
newName = document.getElementById('newName').value;
parentEntry = new DirectoryEntry({fullPath: parent});
// 移动目录到一个新目录,并将其重命名
entry.moveTo(parentEntry, newName, success, fail);
}
复制代码copyTo:
拷贝一个目录到文件系统中不同的位置。在尝试进行以下操作时会发生错误:
拷贝一个目录到其任意深度的子目录中;
同级拷贝(将一个目录拷贝到它的父目录中)时没有提供和当前名称不同的名称;
目录复制总是递归操作 — 也就是说,会拷贝目录中的所有内容。
参数:
parent:将目录对象拷贝到的父级目录。(DirectoryEntry类型)
newName:目录的新名称。如果没有指定,默认为当前名字。(DOMString类型)
successCallback:拷贝成功后调用的回调函数,参数为拷贝后的新目录的DirectoryEntry对象。(函数类型)
errorCallback:试图拷贝目录发生错误时调用的回调函数,其参数为一个FileError对象。(函数类型)
简单的范例:
function win(entry) {
console.log("New Path:" + entry.fullPath);
}
function fail(error) {
alert(error.code);
}
function copyDir(entry) {
var parent = document.getElementById('parent').value,
newName = document.getElementById('newName').value,
parentEntry = new DirectoryEntry({fullPath: parent});
// 拷贝目录到一个新的目录,并将其重命名
entry.copyTo(parentEntry, newName, success, fail);
}
复制代码toURI:
返回一个用于定位该文件的URI。
简单的范例:
// 请求此条目的URI
var uri = entry.toURI();
console.log(uri);
复制代码remove:
删除一个目录。在尝试进行以下操作时会发生错误:
删除一个非空目录;
删除文件系统的根目录。
参数:
successCallback:目录删除成功后调用的回调函数,无参数。(函数类型)
errorCallback:试图删除目录发生错误时调用的回调函数,其参数为一个FileError对象。(函数类型)
简单的范例:
function success(entry) {
console.log("Removal succeeded");
}
function fail(error) {
alert('Error removing directory: ' + error.code);
}
// 移除这个目录
entry.remove(success, fail);
复制代码getParent:
查找包含当前目录的父级DirectoryEntry。
参数:
successCallback: 查找成功后调用此回调函数,参数为当前目录的父级DirectoryEntry对象。(函数类型)
errorCallback:试图获得当前目录的父级DirectoryEntry对象发生错误时调用的回调函数,其参数为一个FileError对象。(函数类型)
简单的范例:
function success(parent) {
console.log("Parent Name: " + parent.name);
}
function fail(error) {
alert('Failed to get parent directory: ' + error.code);
}
// 获得父级DirectoryEntry对象
entry.getParent(success, fail);
复制代码
createReader:
建立一个新的DirectoryReader对象用来读取目录的所有条目。
简单的范例:
// 创建一个DirectoryReader对象
var directoryReader = entry.createReader();
复制代码getDirectory:
创建新的目录或查询一个存在的目录,在尝试进行以下操作时会发生错误:
创建一个直属父级目录尚不存在的目录。
参数:
path:查找或创建的目录路径,可以是一个绝对路径或者是对应当前DirectoryEntry的相对路径。(DOMString类型)
options:用于指定如果查找的目录不存在时是否创建该目录的选项。(Flags类型)
successCallback:获取成功后调用的回调函数,参数为查找到或创建的DirectoryEntry对象。(函数类型)
errorCallback:创建或查找目录发生错误时调用的回调函数,其参数为一个FileError对象。(函数类型)
简单的范例:
function success(parent) {
console.log("Parent Name:" + parent.name);
}
function fail(error) {
alert("Unable
补充:移动开发 , 其他 ,