Javascript 谷歌浏览器扩展-下载、移动和删除文件

Javascript 谷歌浏览器扩展-下载、移动和删除文件,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在尝试为我的工作制作应用程序(将只在我的办公室使用),除此之外,我需要从本地服务器下载文件(它将始终是一个ODT和一个txt文档,由用户点击按钮启动,在特定页面-标准下载)。这两个文件是在服务器上创建的,然后发送给请求下载的用户,所以这一部分和提供下载的任何其他网页一样简单 但下载完成后,我需要: 1) 自动打开ODT(openOffice writer)文件,以便用户可以继续编辑它。接下来会发生什么并不重要 2) 自动将TXT文件移动到用户磁盘上的特定文件夹(这是必需的,因为该特定文件夹由

我正在尝试为我的工作制作应用程序(将只在我的办公室使用),除此之外,我需要从本地服务器下载文件(它将始终是一个ODT和一个txt文档,由用户点击按钮启动,在特定页面-标准下载)。这两个文件是在服务器上创建的,然后发送给请求下载的用户,所以这一部分和提供下载的任何其他网页一样简单

但下载完成后,我需要:

1) 自动打开ODT(openOffice writer)文件,以便用户可以继续编辑它。接下来会发生什么并不重要

2) 自动将TXT文件移动到用户磁盘上的特定文件夹(这是必需的,因为该特定文件夹由我们的专用打印机监控,每当打印机检测到该文件夹中的文件时,它就会自动开始打印)。将默认chrome下载文件夹设置为受监控的文件夹不是选项,所以我需要在下载到受监控的文件夹后自动移动TXT文件

3) 在前两个操作完成后,我需要清理默认的下载文件夹(默认情况下chrome下载的文件夹),因为它将充满这些文件,不再需要它们

现在,如果我能用javascript来完成这项工作就太好了,但正如我所知,如果不向用户显示对话框,就无法在本地系统上操作文件,所以这不是一个选项

我想这部分可以通过chrome扩展来完成,这是一个可以接受的解决方案,因为这个应用程序只会在我的办公室中使用。但我不知道如何以及是否真的有可能实现我想要的,所以我需要你的帮助

附言。 重要的是,在用户点击页面上的“下载”下载ODT和TXT文件后,浏览器不会出现其他窗口、对话框和其他“问题”,但之后的一切都会自动进行


谢谢大家!

是的,只要您可以接受Downloads文件夹的子文件夹作为打印机的目标,就可以使用执行这些任务。恐怕你不能在任意文件夹中下载

  • 使用chrome.downloads.download启动的下载完成后,您可以使用启动打开它

  • 您可以通过提供到的相对路径(注意
    /
    斜杠而不是
    \
    )启动下载到子文件夹:
    打印输出/file.txt

  • 您可以记住下载id,然后使用进行清理


  • 请注意您需要添加的权限,它们对于此API来说是非常细粒度的。

    Javascript不能这样做(出于安全原因),因此您需要查看NaCl和。谢谢您,David,但是可以使用google chrome扩展名来为我做此文件操作吗(例如,扩展监视器下载,当检测到目标文件时,它会按我的要求处理它们)。我知道google chrome有chrome文件系统和downlod API,但不确定是否以及如何将其用于我的案例,以及是否可以不使用usre的任何额外对话框和输入。@David看到我的答案-使用
    chrome.downloads
    API可以以有限的方式实现这一点。在他的问题中,在第2项下,他说“将默认chrome下载文件夹设置为受监控的文件夹不是选项"@David,这是可以理解的-您无法监视整个下载文件夹。除非专门这样做,否则不会写入的特定子文件夹-这是可行的。子文件夹的解决方案可能会起作用,但我很震惊,用户可能会意外删除该文件夹,而这可能会导致打印机出现很多问题。如果发生这种情况ens当我不在办公室时,整个业务都会停止,所以风险太大。但你们有没有其他的解决方案呢?不必是chrome扩展。也许可以使用java applet或VB之类的东西。不是说我熟悉他们,而是我想我可以解决一些问题,因为它非常简单在我需要时,如果需要,文件夹将自动重新创建;如果您担心删除,您可以手动创建它并锁定其权限。至于其他解决方案,这可能是一个新问题。祝您好运。Xan您至少可以建议在什么方向寻找替代解决方案吗?我只是不知道。我将接受我不知道你的答案,因为如果我选择使用默认下载文件夹(带子文件夹),它对我很有帮助,但我只想知道它是否可以不用它就完成。如果你知道的话,你能告诉我在哪里寻找替代方案吗:)