Scripting.FileSystemObject 文件操作

来源:互联网 发布:淘宝 userid 加密算法 编辑:程序博客网 时间:2024/04/30 21:45


  
Scripting.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() 打开一个文件流
实例说明 

BuildPath(路径,文件名) //这个方法会对给定的路径加上文件,并自动加上分界符 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
var newpath = fso.BuildPath("c:\\tmp", "51js.txt"); //生成 c:\tmp\51js.txt的路径 
alert(newpath); 
--> 
</SCRIPT> 

CopyFile(源文件, 目标文件, 覆盖) //复制源文件到目标文件,当覆盖值为true时,如果目标文件存在会把文件覆盖 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bak"); 
--> 
</SCRIPT> 

CopyFolder(对象目录,目标目录 ,覆盖) //复制对象目录到目标目录,当覆盖为true时,如果目标目录存在会把文件覆盖 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\"); //把C盘的Desktop目录复制到D盘的根目录 
--> 
</SCRIPT> 

CreateFolder(目录名) //创建一个新的目录 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
var newFolderName = fso.CreateFolder("c:\\51JS"); //在C盘上创建一个51JS的目录 
--> 
</SCRIPT> 

CreateTextFile(文件名, 覆盖) //创建一个新的文件,如果此文件已经存在,你需要把覆盖值定为true 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
var newFileObject = fso.CreateTextFile("c:\\autoexec51JS.bat", true); //脚本将在C盘创建一个叫 autoexec51JS.bat的文件 
--> 
</SCRIPT> 

DeleteFile(文件名, 只读?) //删除一个文件,如果文件的属性是只读的话,你需要把只读值设为true 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); //为了安全我先把要删除的autoexec.bat备份到你的D盘 
var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bat"); //把C盘的autoexec.bat文件删除掉 
fso.DeleteFile("c:\\autoexec.bat", true); 
--> 
</SCRIPT> 

DeleteFolder(文件名, 只读?)//删除一个目录,如果目录的属性是只读的话,你需要把只读值设为true 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\"); //为了安全我先把你C盘的Desktop目录复制到你D盘的根目录 
fso.DeleteFolder("c:\\WINDOWS\\Desktop", true); //把你的Desktop目录删除,但因为desktop是系统的东西,所以不能全部删除,但......... 
--> 
</SCRIPT> 

DriveExists(盘符) //检查一个盘是否存在,如果存在就返会真,不存在就返回....... 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
hasDriveD = fso.DriveExists("d"); //检查系统是否有D盘存在 
hasDriveZ = fso.DriveExists("z"); //检查系统是否有Z盘存在 
if (hasDriveD) alert("你的系统内有一个D盘"); 
if (!hasDriveZ) alert("你的系统内没有Z盘"); 
--> 
</SCRIPT> 

FileExists(文件名) //检查一个文件是否存在,如果存在就返会真,不存在就返回....... 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
fileName = fso.FileExists("c:\\autoexec.bat"); 
if (fileName) alert("你在C盘中有autoexec.bat文件,按下确定后这个文件将被删除!"); //开个玩笑:) 
--> 
</SCRIPT> 

FolderExists(目录名) //检查一个目录是否存在,如果存在就返会真,不存在就返回....... 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
folderName = fso.FolderExists("c:\\WINDOWS\\Fonts"); 
if (folderName) alert("按下确定后系统的字库将被删除!"); //开个玩笑:) 
--> 
</SCRIPT> 

GetAbsolutePathName(文件对象) //返回文件对象在系统的绝对路径 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
pathName = fso.GetAbsolutePathName("c:\\autoexec.bat"); 
alert(pathName); 
--> 
</SCRIPT> 

GetBaseName(文件对象) //返回文件对象的文件名 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
baseName = fso.GetBaseName("c:\\autoexec.bat"); //取得autoexec.bat的文件名autoexec 
alert(baseName); 
--> 
</SCRIPT> 

GetExtensionName(文件对象) //文件的后缀 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
exName = fso.GetExtensionName("c:\\autoexec.bat"); //取得autoexec.bat后缀bat 
alert(exName); 
--> 
</SCRIPT> 

GetParentFolderName(文件对象) //取得父级的目录名 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
parentName = fso.GetParentFolderName("c:\\autoexec.bat"); //取得autoexec.bat的父级目录C盘 
alert(parentName); 
--> 
</SCRIPT> 

GetSpecialFolder(目录代码) //取得系统中一些特别的目录的路径,目录代码有3个分别是 0:安装Window的目录 1:系统文件目录 2:临时文件目录 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
tmpFolder = fso.GetSpecialFolder(2); //取得系统临时文件目录的路径 如我的是 C:\windows\temp 
alert(tmpFolder); 
--> 
</SCRIPT> 

GetTempName() //生成一个随机的临时文件对象,会以rad带头后面跟着些随机数,就好象一些软件在安装时会生成*.tmp 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
tmpName = fso.GetTempName(); //我在测试时就生成了radDB70E.tmp 
alert(tmpName); 
--> 
</SCRIPT> 

MoveFile(源文件, 目标文件) //把源文件移到目标文件的位置 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
var newpath = fso.MoveFile("c:\\autoexec.bat", "d:\\autoexec.bat"); //把C盘的autoexec.bat文件移移动到D盘 
--> 
</SCRIPT>







例子:test.html      (新建--删除--打开)



<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>

<script language="Javascript"><!-- 
var objMyFSO = new ActiveXObject("Scripting.FileSystemObject"); 
function createText()
{   
   var fileName = objMyFSO.FileExists("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt"); 
    if (!fileName)
     {
        var text = objMyFSO.CreateTextFile("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt", true); 
    var textValue = window.prompt("新建文本,请输入文本内容:","");
    if(!textValue){text.Close(); return;}
     text.WriteLine(textValue); 
     text.Close(); 
     alert("我已经在你的C盘根目录下生成了一个testfile.txt的文件!"); 
        return;
     }
     
   var forAppending = 8;
   var text = objMyFSO.OpenTextFile("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt",forAppending,false);   
   var textValue = window.prompt("追加文本,请输入文本内容:","");
   if(!textValue){text.Close(); return;}
   text.WriteLine(textValue); 
   text.Close();   


function deleteText()
{   
   var fileName = objMyFSO.FileExists("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt"); 
    if (fileName)
     {
     var text = objMyFSO.DeleteFile("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt", true); 
    alert("我已经删除C盘根目录下生成了一个testfile.txt的文件!"); 
     }
     else
   {
     alert("文件不存在!"); 
     }


function openText()
{
   var fileName = objMyFSO.FileExists("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt"); 
     if (!fileName)
     {
     alert("不存在文件"); 
     return;
     }
    var forAppending = 1;
   var text = objMyFSO.OpenTextFile("C:\\Documents and Settings\\shiyuanjie\\My Documents\\writes\\testfile.txt",forAppending);
    var lineValue = text.ReadLine(); 
    var allvVlue = text.ReadAll(); 
    
   text.close();
   alert(lineValue);
}


// --></script>

</head>

<body>
<input type="button" value="创建文件" onclick="createText()">
<input type="button" value="删除文件" onclick="deleteText()">
<input type="button" value="打开文件" onclick="openText()">
</body>

</html>


原帖:http://hi.baidu.com/cayaca/blog/item/34e0c7d1b389263f9b5027d3.html

原创粉丝点击