1. 程式人生 > >js 檔案操作 fso new ActiveXObject( "Scripting.FileSystemObject ")

js 檔案操作 fso new ActiveXObject( "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>