我已经使用HTML5提供的FILESYSTEM API成功存储了数据。但我不知道在哪里可以识别本地存储库中的文件,以便我可以备份我存储的数据。我还检查了服务器(Tomcat 7.0)中应用程序的根目录,但是我找不到该文件。使用chrome开发人员工具时,我检查数据是否存储成功。
守则是这样的:
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
function onInitFs(fs)
{
fs.root.getFile('fpslog.txt', {create: false}, function(fileEntry) {
// Create a FileWriter object for our FileEntry (log.txt).
fileEntry.createWriter(function(fileWriter) {
fileWriter.seek(fileWriter.length); // Start write position at EOF.
fileWriter.onwriteend = function(e) {
console.log('Write completed.');
};
fileWriter.onerror = function(e) {
console.log('Write failed: ' + e.toString());
};
// Create a new Blob and write it to log.txt.
var blob = new Blob(['Hello World'], {type: 'text/plain'});
fileWriter.write(blob);
}, errorHandler);
}, errorHandler);
}
window.requestFileSystem(window.TEMPORARY, 5*1024*1024 /*5MB*/, onInitFs, errorHandler);
和ERROR功能:
function errorHandler(e) {
var msg = '';
switch (e.code) {
case FileError.QUOTA_EXCEEDED_ERR:
msg = 'QUOTA_EXCEEDED_ERR';
break;
case FileError.NOT_FOUND_ERR:
msg = 'NOT_FOUND_ERR';
break;
case FileError.SECURITY_ERR:
msg = 'SECURITY_ERR';
break;
case FileError.INVALID_MODIFICATION_ERR:
msg = 'INVALID_MODIFICATION_ERR';
break;
case FileError.INVALID_STATE_ERR:
msg = 'INVALID_STATE_ERR';
break;
default:
msg = 'Unknown Error';
break;
};
console.log('Error: ' + msg);
}
在开发人员工具中,我确实看到没有错误打印,而是说“已完成写入”,这意味着我可以在某处创建文件并存储数据。我想访问要查看的数据。正如教程中提到的,我没有看到在根文件夹中创建的任何文件。任何帮助请。
答案 0 :(得分:2)
您还可以使用根目录的filesystem:
URL查看文件。打开
地址栏中的filesystem:<YOUR_ORIGIN>/temporary/
,替换为您的应用运行的来源(例如“http://stackoverflow.com”)。
您还可以在实验中的DevTools中启用“FileSystem检查”。这可能还需要您在about:flags
中“启用实验性DevTools功能”。
答案 1 :(得分:0)
我找到了方法,使用谷歌浏览器plugin,它可以帮助您查看HTML5的文件系统API的内容。