我正在开发一个需要某种文件系统访问权限的Web应用程序。理想情况下,我希望能够在应用程序中“打开...”一个文件,然后将文件“保存”回用户打开它的位置的本地文件系统。
目前,我们使用java applet来实现此功能,但由于java已经过时了,我们需要使用javascript和html5。
显然,由于浏览器内置的安全原因,无法做到这一点,所以我试图在某种程度上模仿它。
我正在使用html5文件api成功导入/打开文件,所以这是成功的一半。困难的部分是获得保存功能。我正在接近使用iframe和内容处理,但是当浏览器设置为自动将文件下载到下载文件夹时会出现问题......用户可能会感到困惑,无法找到他们刚刚下载的文件。
所以,我的问题是:是否有某种onSave事件或某种方式让浏览器的“另存为...”窗口至少返回用户保存文件的文件名?
另外,我查看了filesystem / fileWriter html5 apis,但据我了解,它们仅限于本地文件系统的沙盒区域,仅在chrome dev版本中可用。
任何帮助将不胜感激!
答案 0 :(得分:1)
不,使用纯JavaScript无法做到这一点。您可以设法触发带有数据URI的下载或带有某些标题的iframe,但是您无法绕过浏览器的下载管理器。
您可以使用Flash或Java小程序为您处理保存,或者要求用户右键单击链接并保存为,然后他就可以选择目的地。
使用Flash的一个流行选项是Downloadify。