【问题标题】:Html/JavaScript: Overwrite file every time it downloadsHtml/JavaScript:每次下载时覆盖文件
【发布时间】:2016-02-11 06:06:38
【问题描述】:

是否可以在每次保存时覆盖文件。我在 html 中有一个 textarea,我正在使用 JavaScript 将文本保存到文件中。目前保存为:test.txt、test(1).txt、test(2).txt。是否可以在每次下载时保存一个 test.txt。

我用来下载的代码如下:

function saveTextAsFile()
{      
    var textToWrite = document.getElementById("inputTextToSave").value;
    var textFileAsBlob = new Blob([textToWrite], {type:'plan/text'});
    var fileNameToSaveAs = "test.txt";
    var downloadLink = document.createElement("a");
    downloadLink.download = fileNameToSaveAs;
    downloadLink.innerHTML = "My Hidden Link";
    window.URL = window.URL || window.webkitURL;
    downloadLink.href = window.URL.createObjectURL(textFileAsBlob);
    downloadLink.onclick = destroyClickedElement;
    downloadLink.style.display = "none";
    document.body.appendChild(downloadLink);
    downloadLink.click();
}

感谢您的帮助。

【问题讨论】:

    标签: javascript html download save


    【解决方案1】:

    不,javascript 脚本无权访问文件系统,因此无法操作文件,它所能做的就是向浏览器建议要下载的流并建议该流的名称。浏览器负责决定下载什么以及如何下载(您可以向浏览器添加插件和扩展以强制执行此特定行为,但我认为这不是您所需要的)

    编辑: 在第二点上,您实际上可以使用 java 小程序来做到这一点。但是我不能帮助你,而且真诚地,你不应该(因为它不会在铬上工作,除非你有一个非常重要的理由,这就像用核弹杀死一只蚊子,更不用说从用户的角度意外删除文件的可能性以及大量的警报会使您的应用程序看起来很可疑,因为从用户的角度来看,它没有任何真正的理由使用 java)

    【讨论】:

      猜你喜欢
      • 2017-01-24
      • 1970-01-01
      • 2012-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多