我想知道,使用 Chrome 中公开的新文件 API(我目前不关心跨浏览器支持),是否可以写回通过文件输入打开的文件。
您可以在这里看到我正在尝试完成的示例:http: //www.grehz.com/ide。
我知道我可以使用服务器端脚本来动态创建文件并允许用户正常下载它们。我希望有一种方法可以完成这个纯粹的客户端。我在某处读过,您可以写入通过文件输入打开的文件。尽管我已经看到传递对 FileWriter 类的引用,但我找不到任何这样的示例。
如果这是不可能的,我完全不会感到惊讶(这似乎可能存在安全问题)。只是寻找一些指导或资源。
更新:
我在这里阅读:http: //dev.w3.org/2009/dap/file-system/file-writer.html
当我在 Chrome 中玩耍时,看起来 FileSaver 和 FileWriter 没有实现,但 BlobBuilder 是。我可以在 BB 对象上调用 getBlob(),有没有什么方法可以在没有 FileSaver 或 FileWriter 的情况下保存它?
更新2:
我在 Chromium 项目中发现了这个问题:http ://code.google.com/p/chromium/issues/detail?id=65615&q=FileSaver&colspec=ID%20Stars%20Pri%20Area%20Feature%20Type%20Status%20Summary%20Modified %20所有者%20Mstone%20OS
所以很明显它还没有在任何版本中实现(但是,没有提到 FileWriter——尽管我相信 FileWriter 依赖于 FileSaver)。
远离这一点,我正在考虑使用服务器端解决方案。当用户单击保存时,textarea 的内容被发布到脚本,然后写入页面并以纯文本或任何适合用户下载的 mime 类型发回。还有其他建议吗?此解决方案适用于“另存为”,但作为通用保存按钮有点笨拙。