JAVASCRIPT 读取本地文件

来源:互联网 发布:淘宝外宣怎么宣传 编辑:程序博客网 时间:2024/05/19 16:36

用JavaScript打开浏览器本地文件,把数据自动填写到表单

 

javascript是一种客户端脚本语言。运行在浏览器环境下,而不是在服务器上运行。它能增强客户端的功能,提高客户端的效率。

1995.12.4Netscape SUN公司合作,推出了JavaScript1.0。当时称为LiveScript.是一种解释性语言。JavaScript被定位在作为Java语言的一种补充,

Jscript是微软公司模仿JavaScipt的作品。但又遗漏了一些特性。所以稍微有所不同。但基本上可看作是一种语言。

最近,JavaScript也被包括在Microsoft Windows Scripting Host中,这样程序员就可以编写在操作系统本身执行的脚本。并且提供安全保护措施。在对本地文件操作前都要征求用户允许。

代码实现了用JavaScript打开浏览器本地文件,把数据自动填写到表单:
form1用来打开本地数据文件。一个数据一行
form2是需填写的表单。有多项。text的名字分别从1--N。

function ReadLine()

{

//从表单1里获取文件地址

var url=form1.browser.value;

 

 

//声明一个FileSystemObject的实例

var myFileSysObj = new ActiveXObject("Scripting.FileSystemObject");

 

//声明一个textStream 对象 用来打开文件

 

var myInputTextStream = myFileSysObj.OpenTextFile(url,1,true);

 

 

var i =1;

while(!myInputTextStream.AtEndOfStream)

{

      

       var aa=Number(i).toString();

       form2.item(aa).value = myInputTextStream.ReadLine();

       i++;

}

 

//close the stream to the files

myInputTextStream.Close();

 

}

 

</script>

 

 

 

FileSystemObject简介及应用:  
  方法或者属性   描述    
  BuildPath()    
    生成一个文件路径    
  CopyFile()     复制文件    
  CopyFolder()   复制目录    
  CreateFolder()     创建新目录    
  CreateTextFile()     生成一个文件    
  DeleteFile()     删除一个文件    
  DeleteFolder()     删除一个目录    
  DriveExists()     检验盘符是否存在    
  Drives   返回盘符的集合    
  FileExists()     检验文件是否存在    
  FolderExists   检验一个目录是否存在    
  GetAbsolutePathName()     取得一个文件的绝对路径    
  GetBaseName()     取得文件名    
  GetDrive()     取得盘符名    
  GetDriveName()     取得盘符名    
  GetExtensionName()     取得文件的后缀    
  GetFile()     生成文件对象    
  GetFileName()     取得文件名    
  GetFolder()     取得目录对象    
  GetParentFolderName   取得文件或目录的父目录名    
  GetSpecialFolder()     取得特殊的目录名    
  GetTempName()     生成一个临时文件对象    
  MoveFile()     移动文件    
  MoveFolder()     移动目录    
  OpenTextFile()     打开一个文件流    

 

 

示例二

 var tbsource = document.getElementById("tbsource").value;//本地文件夹路径

 

 var hdfiles = "";

 

var objFSO =new ActiveXObject('Scripting.FileSystemObject');

 

if(!objFSO.FolderExists(tbsource))

{

            alert("<"+tbsource+">该文件夹路径不存在,或者路径不能含文件名!");

            objFSO = null;

            return;

}

 

var objFolder = objFSO.GetFolder(tbsource);

var colFiles = new Enumerator(objFolder.Files);

var re_inf1 = //.jpg$/;   //验证文件夹文件是否jpg文件

 for (; !colFiles.atEnd(); colFiles.moveNext()) //读取文件夹下文件

 

 {

            var objFile = colFiles.item();

            if(re_inf1.test(objFile.Name.toLowerCase()))

            {

              hdfiles = hdfiles+objFile.Name+";";

            }

  }