【问题标题】:How to write data to textfile using JavaScript如何使用 JavaScript 将数据写入文本文件
【发布时间】:2013-02-22 03:07:03
【问题描述】:

我在使用 JavaScript 将日期写入文件 Test.txt 时遇到一些问题。我也找到了很好的答案,但我仍然无法解决。这是我的代码

<script type="text/javascript">
function WriteFile(){
       var fso  = new ActiveXObject("Scripting.FileSystemObject");
       var fh = fso.CreateTextFile("Test.txt", 8,true);
       x=document.getElementById("name").value;
       fh.WriteLine(x);
       fh.Close();
}

<form>
    <input type="text" id="name"/>
    <input type="button" value="Save" id="write" onclick="WriteFile()"/>
</form>

我认为我从电子书中看到的简单示例应该可以很好地运行。

我不确定 Test.txt 的路径。我把它放在我本地主机的同一个文件夹中。

我做错了什么?

【问题讨论】:

  • 8 是干什么用的?只需使用var fh = fso.CreateTextFile("c:\\Test.txt",true);
  • @danleyb2 , var FileObject = fso.CreateTextFile("c:\\Test.txt", 8, true); // 8=追加,true=如果不存在则创建

标签: javascript php activexobject fso


【解决方案1】:

根据http://msdn.microsoft.com/en-us/library/czxefwt8(v=vs.84).aspx,您似乎需要指定文件的完整路径。

例如"C:\\Test.txt"

更新:

刚刚在 IE9 中测试过,它可以工作。

<head>
  <script>
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var fh = fso.CreateTextFile("c:\\Test.txt", 8, true);
    fh.WriteLine("foo");
    fh.Close();
  </script>
</head>

【讨论】:

  • 谢谢!我已经用这样的路径进行了测试,但仍然没有得到结果。
  • 我不知道为什么?我仍然没有从中得到结果。我认为还有什么要配置的吗?我在win8的IE8、IE9和IE10中测试过,结果还是一样
  • 您是从 .HTA 还是其他非浏览器脚本运行?由于安全限制,它不能代替常规的 .HTML 文件工作。
【解决方案2】:

这是您可以通过的示例:-

function WriteToFile(passForm) {
 
    set fso = CreateObject("Scripting.FileSystemObject"); 
    set s   = fso.CreateTextFile("<your Path>/filename.txt", True);
 
    var firstName = document.getElementById('FirstName');
    var lastName  = document.getElementById('lastName');
 
    s.writeline("First Name :" + FirstName);
    s.writeline("Last Name :" + lastName);
 
    s.writeline("-----------------------------");
    s.Close();
 }
<form onSubmit="WriteToFile(this)">
<label>Type your first name:</label>
<input type="text" name="FirstName" id="firstName" size="20">
 
<label>Type your last name: </abel>
<input type="text" name="LastName" id="lastName" size="20">
 
<input type="submit" value="submit">
</form>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-09
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 2011-09-22
    • 2014-06-02
    • 2019-12-31
    相关资源
    最近更新 更多