HTML 5 新增 FileSteam API ,使用该 API 可以将数据存储到用户磁盘的文件系统中。实现 Web 数据的永久保存。
window.requestFileSystem =
window.requestFileSystem || window.webkitRequestFileSystem;
window.requestFileSystem(type, size, successCallback, opt_errorCallback);
FileSystem API 包括两部分:一部分内容为除后台线程之外的任何场所使用的异步 API ,另一部分内容为后台线程中专用的 同步 API 。
使用 window 对象的 requestFileSystem() 方法可以请求受到浏览器沙箱保护的本地文件系统:
opt_errorCallback ∶ 可选参数,设置请求失败时执行的回调函数,该回调函数的参数为一个 FileError 对象,其中存放了请求失败时的各种信息 FileError 对象包含一个 code 属性,其属性值为 FileSystemAPI 中预定义的常量值,说明如下
window.requestFileSystem =
window.requestFileSystem || window.webkitRequestFileSystem;
var fs = null;
if (window.requestFileSystem) {
window.requestFileSystem(
window.TEMPORARY,
1024 * 1024,
function (filesystem) {
fs = filesystem;
},
errorHandler,
);
}
function errorHandler(e) {
switch (e.code) {
case FileError.QUOTA_EXCEEDED_ERR:
console.log(
'文件系统所使用的存储空间的尺寸超过磁盘限额控制中指定的空间尺寸',
);
break;
case FileError.NOT_FOUND_ERR:
console.log('未找到文件或目录');
break;
case FileError.SECURITY_ERR:
console.log('操作不当引起安全性错误');
break;
case FileError.INVALID_MODIFICATION_ERR:
console.log('对文件或目录所指定的操作不能被执行');
break;
case FileError.INVALID_STATE_ERR:
console.log('指定的状态无效');
}
}
webkit 才需要?不懂,后期补上吧。