6

我已经通过 fileSystem API 创建了文件“log.txt”

function initFS(grantedBytes) {
    window.requestFileSystem(window.PERSISTENT, grantedBytes, function (filesystem) {
        fs = filesystem;

        fs.root.getFile('log.txt', { create: true, exclusive: true }, function (fileEntry) {

            // fileEntry.isFile === true
            // fileEntry.name == 'log.txt'
            // fileEntry.fullPath == '/log.txt'
            console.log(fileEntry.fullPath);



        }, errorHandler);
    }, errorHandler);
}

initFS(1024*1024);

并且不完全了解它的结构。有没有办法从 Windows 资源管理器中探索这个文件并在文件系统中查看它?

4

3 回答 3

3

还有一种更简单的方法。在 chrome 上,访问这些网址。
对于 http,它是 "filesystem:http://"+location.host+"/persistent/".
对于 https,它是 "filesystem:https://"+location.host+"/persistent/".

于 2016-05-02T00:54:38.890 回答
2

有点,文件系统 API 不会加密本地存储的数据。然而,它确实改变了文件命名约定。因此,您可能已经命名了它,log.txt但如果您查看文件系统 API 存储文件的位置,您可能会在诸如“00010”之类的任意随机生成的文件名下或诸如“24/00123”之类的随机目录中找到它。

无论如何,您可以在文本编辑器中打开每个文件 - 如果您的文件中写入了文本,您就可以这样查看它。或者,如果您将 JSON 写入文件系统 API,那么当您在文本编辑器中打开时,它将采用人类可读的字符串格式。

在 Windows 7 上,使用 Chrome 可以在此处找到:

C:\Users\{user}\AppData\Local\Google\Chrome\User Data\Default\File System\

如果您想了解它在其他操作系统上通过 Chrome 存储的位置,请参阅这篇文章

于 2013-11-21T22:47:54.743 回答
0

最终用户或维护者可能希望查看的日志文件应存储在正常文件系统中的某个位置。虽然选中的答案建议在使用 HTML5 API 时如何找到它们,但此位置可能会发生变化并且很难找到。

更好的解决方案是让用户在安装应用程序时使用 chrome.fileSystem.chooseEntry 选择日志文件(可能还有其他文件)的目录,然后保留该条目并将其保存在本地存储中,以便可以重复使用随后的发射。

于 2014-04-05T16:22:59.043 回答