This page was saved using WebZIP 7.0.3.1030 offline browser on 12/24/13 11:31:37.
Address: https://crxdoc-zh.appspot.com/apps/fileSystem.html
Title: chrome.fileSystem - Google Chrome 应用开发文档(非官方中文版)  •  Size: 52680

chrome.fileSystem

描述 使用 chrome.fileSystem API 创建、读取、浏览与写入用户本地文件系统中经过沙盒屏蔽的一个区域。使用该 API,Chrome 应用可以读取和写入用户选定的位置,例如文本编辑应用可以使用该 API 读取和写入本地文档。所有失败信息都通过 runtime.lastError 通知。
可用版本 从 Chrome 23 开始稳定支持。
权限 "fileSystem"
{"fileSystem": ["write"]}
{"fileSystem": ["write", "retainEntries", "directory"]}
了解更多 管理数据
用 AngularJS 建立应用
Chrome 应用办公时间:TextDrive 与 AngularJS

chrome.fileSystem 参考

方法

getDisplayPath

chrome.fileSystem.getDisplayPath(entry entry, function callback)

获取 FileEntry 对象的显示路径。显示路径基于文件在本地文件系统上的完整路径,但是可能会为了显示的目的而使可读性更好。

参数

entry ( entry )

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(string displayPath) {...};

displayPath ( string )

getWritableEntry

chrome.fileSystem.getWritableEntry(entry entry, function callback)

从另一个 Entry 获取可写的 Entry。如果应用程序没有 'fileSystem' 下的 'write' 权限则该方法会失败,产生运行时错误。如果项目为 DirectoryEntry(目录项),应用程序必须拥有 "fileSystem" 之下的 "directory" 权限,否则调用会失败。

参数

entry ( entry )

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(entry entry) {...};

entry ( entry )

isWritableEntry

chrome.fileSystem.isWritableEntry(entry entry, function callback)

获取该 Entry 对象是否可以写入的信息。

参数

entry ( entry )

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(boolean isWritable) {...};

isWritable ( boolean )

chooseEntry

chrome.fileSystem.chooseEntry(object options, function callback)

让用户选择文件或目录。

参数

options ( optional object )

属性

type ( optional enum of "openFile", "openWritableFile", "saveFile", or "openDirectory" )

显示的提示类型,默认为 'openFile'(打开文件)。
openFile
提示用户打开现有文件,并在成功后返回只读的 FileEntry(文件项)。从 Chrome 31 开始,如果应用程序拥有 "fileSystem" 之下的 "write" 权限,返回的 FileEntry 可写,否则只读。
openWritableFile
提示用户打开现有文件,并在成功后返回可写的 FileEntry(文件项)。如果应用没有 'fileSystem' 下的 'write' 权限,使用这种类型的调用将会失败,产生运行时错误。
saveFile
提示用户打开现有文件或新文件,并在成功后返回可写的 FileEntry(文件项)。如果应用没有 'fileSystem' 下的 'write' 权限,使用这种类型的调用将会失败,产生运行时错误。
openDirectory
提示用户打开目录,并在成功后返回 DirectoryEntry(目录项)。如果应用程序没有 "fileSystem" 之下的 "directory" 权限,使用这种类型调用会失败,产生运行时错误。如果应用程序拥有 "fileSystem" 之下的 "write" 权限,返回的 DirectoryEntry 可写,否则只读。该类型在 Chrome 31 中新增。

suggestedName ( optional string )

展现给用户的推荐文件名,作为要读取或写入的默认文件名,该参数可选。

accepts ( optional array of object )

该文件打开器可选接受选项的列表,对最终用户来说,每一个选项都会呈现为唯一的分组。

每一个对象的属性

description ( optional string )

这是该选项的可选文字描述。如果不存在的话,将会自动生成描述,通常包含扩充之后的有效扩展名列表(例如 "text/html" 将扩充为 "*.html, *.htm")。

mimeTypes ( optional array of string )

可接受的 MIME 类型,例如 "image/jpeg" 或 "audio/*"。mimeTypes 或 extensions 其中之一必须包含至少一个有效元素。

extensions ( optional array of string )

可接受的扩展名,例如 ["jpg", "gif", "crx"]。

acceptsAllTypes ( optional boolean )

除了 accepts 字段中指定的选项外,是否接受所有文件类型,默认为 true。如果 accepts 字段未设置或没有包含有效的项,它始终会被重置为 true 。

acceptsMultiple ( optional boolean )

是否接受多个文件,仅在 'openFile'(打开文件)和 'openWritableFile'(打开可写文件)时支持。如果该属性设置为 true,调用 chooseEntry 的回调函数时会传递文件项列表,否则传递单个文件项。

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(entry entry, array of fileentry fileEntries) {...};

entry ( optional entry )

fileEntries ( optional array of fileentry )

每一个对象的属性

restoreEntry

chrome.fileSystem.restoreEntry(string id, function callback)

如果可以恢复则恢复指定标识符的文件项,否则该调用会失败,产生运行时错误。该方法在 Chrome 31 中增加。

参数

id ( string )

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(entry entry) {...};

entry ( entry )

isRestorable

chrome.fileSystem.isRestorable(string id, function callback)

返回应用是否有权限恢复指定标识符的文件项。该方法在 Chrome 30 中增加。

参数

id ( string )

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(boolean isRestorable) {...};

isRestorable ( boolean )

retainEntry

string chrome.fileSystem.retainEntry(entry entry)

返回一个标识符,可以传递给 restoreEntry 而重新获得指定文件项的访问。只能保留最近使用的 500 个项目,调用 retainEntry 和 restoreEntry 都算作使用。如果应用拥有 'fileSystem' 之下的 'retainEntries' 权限,项目将永久保留。否则,只有应用运行时或重新启动后才会保留。该方法在 Chrome 31 中增加。

参数

entry ( entry )