javascript可以主动读取本地文件吗

javascript可以主动读取本地文件吗,第1张

javascript语言本身并不提供系统文件功能。

但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>

其实都大同小类滴。做笔记的习惯很好,网上随时都可以翻出来看,还可以交流,或许我可以借鉴一下。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7954340.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存