我如何写在一个txt文件使用javascript

How do I write in a txt file using javascript?

本文关键字:txt 一个 文件 javascript 何写      更新时间:2023-09-26

这是我的代码:

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
    $( document ).ready(function() {
        var fso = new ActiveXObject("Scripting.FileSystemObject");
        var filename = "C:''xampp''htdocs''harti''data.txt";
        var f = fso.OpenTextFile(filename, 2, true, -1); // -1 means unicode
        f.WriteLine("Hello world!");
        f.Close();
    });
</script>

data.txt文件存在。问题是为什么我的代码不能工作?thx

问题是,您想要保存什么,为什么需要写入文本文件?

允许浏览器写入用户的机器是一个安全漏洞。浏览器的脚本不应该访问和修改属于用户的本地文件目录。如果这样,病毒和其他恶意代码就会传播。

如果你想保存一些数据,你有两个选择:

选项1:使用服务器端脚本(例如PHP)将其保存到服务器。您可以创建任意多的文件,重命名它们,将它们保存到db并编辑它们,等等。如果您担心重定向用户(用户需要提交表单)。您可以使用AJAX,在后台发送一个请求来保存用户的输入,并让php为您保存文件。

使用php写入文件的示例代码:

$f = fopen('/path/to/the/file/you/want/to/write/to', 'a');    
fwrite($f, '<<your string>>');
fclose($f);

选项2:

保存到浏览器的存储中。快速和离线工作。有几种类型的浏览器存储,如localStorage,它们都是内置的,可以直接使用。

存储对象是最近添加到标准中的。因此,它们可能不存在于所有浏览器.........可以保存的最大数据大小受到cookie使用的严格限制。

代码示例:

  function storeMyContact(id) {
    var fullname    = document.getElementById('fullname').innerHTML;
    var phone       = document.getElementById('phone').innerHTML;
    var email       = document.getElementById('email').innerHTML;
    var comments            = "this user has saved his info"
    localStorage.setItem('mcFull',fullname);
    localStorage.setItem('mcPhone',phone);
    localStorage.setItem('mcEmail',email);
    localStorage.setItem('comments',comments);
  }

另一方面,localStorage可能还不够,因此,需要使用外部库来实际利用内置存储的浏览器,并使数据库跨浏览器工作。

1- SQL like DB sequelsphere(看起来适合重负载!)

查询代码示例,将直接从浏览器使用MYSQL运行,如INSERT和SELECT:

SELECT empl_id, name, age 
  FROM empl 
 WHERE age < 30 

2- JSON like DB taffydb(看起来适合每天的活动!)

// Create DB and fill it with records
var friends = TAFFY([
    {"id":1,"gender":"M","first":"John","last":"Smith","city":"Seattle, WA","status":"Active"},
    {"id":2,"gender":"F","first":"Kelly","last":"Ruth","city":"Dallas, TX","status":"Active"},
    {"id":3,"gender":"M","first":"Jeff","last":"Stevenson","city":"Washington, D.C.","status":"Active"},
    {"id":4,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"}   
]);
   // Find all the friends in Seattle
   friends({city:"Seattle, WA"});

3- jstorage是一个跨浏览器的键值存储数据库,用于将数据本地存储在浏览器中- jstorage支持所有主流浏览器,包括桌面(是的-甚至Internet Explorer 6)和移动设备。

如果你想有更多的选项->(客户端-浏览器-数据库)