js读取修改创建txt文本类型文件(.ini)
时间:2014-05-08 13:54:12
收藏:0
阅读:432
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body> <script language="javascript" type="text/javascript"> /* object.OpenTextFile(filename[, iomode[, create[, format]]]) 参数 object 必选项。object 应为 FileSystemObject 的名称。 filename 必选项。指明要打开文件的字符串表达式。 iomode 可选项。可以是三个常数之一:ForReading 、 ForWriting 或 ForAppending 。 create 可选项。Boolean 值,指明当指定的 filename 不存在时是否创建新文件。如果创建新文件则值为 True ,如果不创建则为 False 。如果忽略,则不创建新文件。 format 可选项。使用三态值中的一个来指明打开文件的格式。如果忽略,那么文件将以 ASCII 格式打开。 设置 iomode 参数可以是下列设置中的任一种: 常数 值 描述 ForReading 1 以只读方式打开文件。不能写这个文件。 ForWriting 2 以写方式打开文件 ForAppending 8 打开文件并从文件末尾开始写。 format 参数可以是下列设置中的任一种: 值 描述 TristateTrue 以 Unicode 格式打开文件。 TristateFalse 以 ASCII 格式打开文件。 TristateUseDefault 使用系统默认值打开文件。 */ //读文件 function readFile(filename) { var fso = new ActiveXObject("Scripting.FileSystemObject"); var f = fso.OpenTextFile(filename, 1); var s = ""; while (!f.AtEndOfStream) { var txt = f.ReadLine(); s += txt + "\n"; } f.Close(); return s; } //写文件--增加行 function writeFile(filename, filecontent) { var fso, f; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile(filename, 8, true); f.WriteLine(filecontent); f.Close(); alert(‘ok‘); } //写文件--替换文本 filecontent 为数组,每组为一行数据 function writeAlter(filename, filecontent) { var fso, f; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.OpenTextFile(filename, 2, true); for (var i = 0; i < filecontent.length; i++) { f.WriteLine(filecontent[i]); } f.Close(); alert(‘ok‘); } //写入新文件--读取文件,修改id 值,创建新文件覆盖 function writeFileInI(filename) { var fso,f; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.CreateTextFile(filename); //创建文件 var txt = document.getElementById("show").value.split("\n"); for (var i = 0; i < txt.length; i++) { if (/id=/.test(txt[i])) { txt[i] = "id=" + "R99999999999999999"; } f.WriteLine(txt[i]); } f.close(); alert(‘ok‘); } //获取值 function getTxtData(val) { var txt = document.getElementById("show").value.split("\n"); for (var i = 0; i < txt.length; i++) { if (/id=/.test(txt[i])) { txt[i] = "id=" + val; } } return txt; } </script> <input type="text" id="in" name="in" /> <input type="button" value="Write!" onclick="writeFile(‘D:\\a.ini‘,document.getElementById(‘in‘).value);" /><br> <br> <input type="button" value="Read!" onclick="document.getElementById(‘show‘).value=readFile(‘D:\\a.ini‘);" /><br> <textarea id="show" name="show" cols="100" rows="20"> </textarea> <input type="button" value="writeFileInI!" onclick="writeFileInI(‘D:\\a.ini‘)" /><br> <input type="button" value="writeAlterInI!" onclick="writeAlter(‘D:\\a.ini‘,getTxtData(‘R999999999‘))" /><br> </body> </html>
此处操作的是客户端文本文件。
评论(0)