但javascript的运行环境可能提供文件 *** 作能力。比如说nodejs,javascript当运行在nodejs环境中时,就可以透过node api去主动进行文件读写等 *** 作。但当javascript运行在browser(浏览器)环境中时,就无法主动进行文件读写 *** 作。只能等用户 *** 作文件选择控件之后,被动获取文件的二进制对象。
可以的啦!第一步:创建一个可以将文件翻译成文件流的对象。
Var fso=new ActiveXObject(Scripting.FileSystemObject);
第二步:用于创建一个textStream 对象,括号里边有三个属性
1. 文件的绝对路径
2. 文件的常数 只读=1,只写=2 ,追加=8 等权限。(ForReading 、 ForWriting 或 ForAppending 。);
3. 一个布尔值 允许新建则为true 相反为false;
例:Var f=fso.opentextfile(“C:\a.txt”,1,true);
第三步:调用读取方法
1. Read(用于读取文件中指定数量的字符)
2. ReadLine(读取一整行,但不包括换行符)
3. ReadAll(则读取文本文件的整个内容);
判断是否读取到最后一行
while (!f.AtEndOfStream)
{
f.Readline()
}
第四步:
关闭textStream 对象:
例:f.close();
例子:
<html>
<head>
<title>new page</title>
<script>
function GetHeader(src) {
//权限只读(只读=1,只写=2 ,追加=8 等权限)
var ForReading=1
var fso=new ActiveXObject("Scripting.FileSystemObject")
var f=fso.OpenTextFile(src,ForReading)
return(f.ReadAll())
}
var arr=GetHeader("d:\\test.txt").split("\r\n")
for(var i=0i<arr.lengthi++){
alert("第"+(i+1)+"行数据为:"+arr[i])
}
</script>
</head>
<body>
</body>
</html>
其实都大同小类滴。做笔记的习惯很好,网上随时都可以翻出来看,还可以交流,或许我可以借鉴一下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)