客户端JavaScript 是否有权限读取用户硬盘上的本地文件
展开全部
需要注意,权限问题,是由JavaScript解释器的宿主程序决定的,也就是浏览器解释器的权限,因此,你在服务端无法确定指定位置文件的权限。通常,js是通过LocalStorage和cookie来记录本地设置。
第一步:Var fso=new ActiveXObject(Scripting.FileSystemObject);创建一个可以将文件翻译成文件流的对象。
第二步:用于创建一个textStream 对象括号里边有三个属性4. 文件的绝对路径5. 文件的常数 只读=1,只写=2 ,追加=8 等权限。(ForReading 、ForWriting 或 ForAppending 。);6. 一个布尔值 允许新建则为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();
第一步:Var fso=new ActiveXObject(Scripting.FileSystemObject);创建一个可以将文件翻译成文件流的对象。
第二步:用于创建一个textStream 对象括号里边有三个属性4. 文件的绝对路径5. 文件的常数 只读=1,只写=2 ,追加=8 等权限。(ForReading 、ForWriting 或 ForAppending 。);6. 一个布尔值 允许新建则为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();
展开全部
Js是具备读取文件的功能的,具体代码
function startRequest(){
createXMLHttpRequest();//这个方法你自己写 里面就是创建XMLHttpRequest对象的 复制粘贴就行
xmlHttp.onreadystatechange=handleStateChange;这个handleStateChange是声明的回调函数
xmlHttp.open("GET","你的文件加路径.xml",true);
xmlHttp.send(null);
}
function handleStateChange(){ //这个是刚才声明的回调函数
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
//这里已经获得你的xml文件了 用xmlHttp.responseText 来获取
}
}
}
function startRequest(){
createXMLHttpRequest();//这个方法你自己写 里面就是创建XMLHttpRequest对象的 复制粘贴就行
xmlHttp.onreadystatechange=handleStateChange;这个handleStateChange是声明的回调函数
xmlHttp.open("GET","你的文件加路径.xml",true);
xmlHttp.send(null);
}
function handleStateChange(){ //这个是刚才声明的回调函数
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
//这里已经获得你的xml文件了 用xmlHttp.responseText 来获取
}
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
取决于这些js代码运行的环境(即宿主)。
1,IE浏览器里面可以通过ActiveX操作文件,本人实际操作过。
2,其他浏览器暂时不可以。但是Chrome有个扩展能使chrome支持ActiveX,理论上安装这个扩展后就可以调用了,没试过。chrome还有个扩展可以看本机电脑上的图片,效果很炫,名字忘了,不知道它是怎么实现的。
3,写在服务器里面的(nodejs)就可以。
1,IE浏览器里面可以通过ActiveX操作文件,本人实际操作过。
2,其他浏览器暂时不可以。但是Chrome有个扩展能使chrome支持ActiveX,理论上安装这个扩展后就可以调用了,没试过。chrome还有个扩展可以看本机电脑上的图片,效果很炫,名字忘了,不知道它是怎么实现的。
3,写在服务器里面的(nodejs)就可以。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询