js读取txt文件内容到TextBox中

来源:百度知道 编辑:UC知道 时间:2024/05/25 18:44:03
在ASP.NET的开发过程仲,想做一个从客户端的机器上打开一个txt文件,并把文件里的文本赋给TextBox,由于ASP.NET不能直接对客户端进行操作,没提供现成的打开文件对话框,所以打算用JS实现,在网上查了下并结合自己的思路写了如下JS代码(我没学过JS,也不知道下面那段代码有没有错)
var fd = new ActiveXObject("MSComDlg.CommonDialog");
fd.Filter = "*.txt"; //过滤文件类型,现在就只能存成.xml的文件了
fd.FilterIndex = 2;
fd.MaxFileSize = 128;
fd.ShowOpen();//这个是储存的对话框,如果是需要打开的话,就要用fd.ShowOpen();
//document.FrmDataAll.txtPath.value=fd.filename;//fd.filename是用户选择的路径噢
var fso=new ActiveXObject("scripting.filesystemobject_0418s");
var txtstream=fso.openTextFile(fd.filename);
var content="bbbb";
while(!txtstream.atEndOfLine)
{
content+=txtstream.readLine();
}
txtstream.close();
txtstream=null;
fso=null;
document.getElementById('<%=content.ClientID %>').value=content;

实现思路:先通过js的ActiveXObject方法,读取到文件,之后直接写人需要写入的位置即可。
var fso, ts, s ;
var ForReading = 1;
fso = new ActiveXObject("Scripting.FileSystemObject");
ts = fso.OpenTextFile("d:\\testfile.txt", ForReading);
s = ts.ReadLine();
document.getElementById("aa").innerHTML=s;
上面aa就可以定义为TextBox的id值。

js不能操作客户端本地文件的,
flash以前能,现在好像有所限制
除非是java程序才行

这样客户端会提示下载安装空间,一般用户都不敢打开的,
.net怎么会没提供现成的打开文件对话框呢?好像是fileopendialog什么的,有的。