chrome.fileSystem api文件到临时目录

时间:2015-12-09 09:58:27

标签: javascript google-chrome google-chrome-app html5-filesystem

如何在chrome filesystem api中将文件写入临时目录?

        chrome.fileSystem.getWritableEntry("temp dir here", function(entry) {
            var uniqid = Math.floor((Math.random() * 10) + 1)+Date.now();
            entry.getFile(uniqid+'.txt', {create:true}, function(entry) {
                entry.createWriter(function(writer) {
                    writer.write(new Blob([printText], {type: 'text/plain'}));
                });
            });
        });

我需要这个唯一的.txt来写入临时目录,然后获取该位置..

1 个答案:

答案 0 :(得分:1)

您可以将HTML5虚拟文件系统用作" staging"在将其复制到最终版本之前的位置"真实"夹。您仍然需要请求访问最终文件夹。

大多数详细信息都可以在Exploring the FileSystem API文章中找到,但主题如下:chrome.fileSystem API基于相同的原则构建,当您使用{{1}请求时,您只需获得不同的条目}

要获取虚拟文件系统而不是真实文件系统,您需要一个不同的调用:

chrome.fileSystem.chooseEntry

有关更多文档,MDN是个不错的选择。

是的,有很大的红色可怕警告"不要使用"。它不可移植,因为只有Chrome实现它而其他浏览器决定不这样做。但是为了专门编写Chrome应用程序,它很好。如果您需要确保Chrome会继续支持它,那么window.webkitRequestFileSystem( window.TEMPORARY, 5*1024*1024 /* 5MB, adjust as needed, may require "unlimitedStorage" permission */, onInitFs, errorHandler ); function onInitFs(filesystem) { /* do something with filesystem.root, which is a DirectoryEntry, just as you would with `chrome.fileSystem.chooseEntry` */ } 就会与之紧密结合。