【问题标题】:New File stucks新文件卡住
【发布时间】:2016-05-02 02:42:24
【问题描述】:

我是 javascript 新手,试图在本地 txt 文件中读写,所以我按照我在网上找到的那样做了,但由于某种原因,它卡在了新的文件实例化中:

<script type="text/javascript">
var txtFile = "d:/test.txt"
alert('point 1');
var file = new File(txtFile);
alert('point 2');
</script>

它只打印“point 1”字符串。谢谢。

【问题讨论】:

  • File构造函数需要两个参数
  • 写入本地文件系统要比这复杂得多。查找一些教程!
  • 我不是说我试图在这段特定的代码中写入文件,我是说它卡在新文件实例化中,这是第一部分,理解一个短语更多比这复杂。

标签: javascript file


【解决方案1】:

new File()构造函数至少需要两个参数;第一个参数包含StringArrayBufferViewArrayBufferBlob 或另一个File 对象的数组;第二个文件名。您无法使用javascript 为文件指定下载目录,但您可以在浏览器设置或首选项中设置下载目录。您还可以利用a 元素中的download 属性在Save File 对话框中设置文件名。

我是 javascript 新手,正在尝试在本地 txt 中读写 文件

您可以使用&lt;input type="file"&gt; 元素检索test.txt,并在使用相同文件名重新保存之前编辑&lt;textarea&gt; 处的.txt 文件。另见Edit, save, self-modifying HTML document; format generated HTML, JavaScriptHow to Write in file (user directory) using JavaScript?

<script type="text/javascript">
  var txtFile = "test.txt";
  var text = "abc";
  var file = new File([text], txtFile);
  console.log(file);
  var a = document.createElement("a");
  a.download = file.name;
  a.href = URL.createObjectURL(file);
  document.body.appendChild(a);
  a.innerHTML = file.name;
  a.onclick = function() {
    this.parentElement.removeChild(this)
  }
</script>

【讨论】:

  • 它会生成一个包含文本的文件,如果文件存在则删除所有文本,但是如何将文本恢复为字符串?
  • @JamesB “它会生成一个包含文本的文件,如果文件存在则删除所有文本,但是如何将文本恢复为字符串?” Aru 尝试连接其他文本内容到现有文件,然后保存文件?
  • 对不起,你不明白,你代码创建一个文件和下载它的链接,我想在本地机器上读写。
  • @JamesB "我想在本地机器上读写" 这是最接近直接在本地机器上读写的实现stackoverflow.com/questions/36098129/…。请注意,下载文件时,会将其写入本地计算机。您可以使用&lt;input type="file"/&gt; 从本地机器读取文件,修改文件,然后下载设置为同名的文件以覆盖现有文件,请参阅stackoverflow.com/questions/30563157/…
猜你喜欢
  • 2017-03-17
  • 2015-12-23
  • 1970-01-01
  • 2017-08-28
  • 2019-09-27
  • 2010-11-05
  • 2020-12-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多