版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://pp99nn.blogbus.com/logs/46943583.html
javascript在浏览器本地和与服务器通讯方面都有优异的表现。
使用javascript对本地文件进行操作实际上是有一点技术后退的感觉。毕竟桌面应用程序微软的、java的已经相当成熟了。不过用javascript做点小程序来处理本地事务,在没有java或者MFC开发环境的时候还是很方便的。
闲话少说,入正题:
1.先上代码:
//读文件
var fso, f1, ts;
var ForReading = 1;
fso = new ActiveXObject("Scripting.FileSystemObject");
ts = fso.OpenTextFile(document.all.attachFile.value/*此处为含全部路径的文件名*/, ForReading);
document.all.mailbdy.value=ts.ReadAll();
ts.Close();
//写文件
var title = document.getElementById("title").value;//文件名
var fso=new ActiveXObject("Scripting.FileSystemObject");
var f=fso.CreateTextFile("C://"+title+".nc",true); //可随意选择后缀名
f.write(document.getElementById("babala").value);
f.Close();
很简单吧,这就是基本过程,从文件中读取到数据以后就可以进行相关操作了。
2.由于安全性原因ActiveXObject对象在firefox中无法使用。因此想要在firefox中完成类似的功能就需要采取别的方法了。(怎么做,现在我也不知道,嘻嘻)
3.选择输入文件。可以使用<input type="file" name="attachFile"> 来获取包含路径的文件名。
4.我使用了<textarea>来进行文件的显示和修改。在保存的时候。也可以使用window的saveAs命令。不过在保存窗口内容的时候,因为存在/n和<br />的转换问题,因此在保存文件时可能会导致格式错误。不过用ActiveXObject保存内容可以不用考虑该问题。
5.javascript的字符串类提供的方法可以很方便的编写字符串处理程序。另外在处理字符到数字的转换时,可以使用praseInt() 和parseFloat()方法。