JS文本操作 Scripting.FileSystemObject

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="創建文件" οnclick="createText()">
<input type="button" value="刪除文件" οnclick="deleteText()">
<input type="button" value="打開文件" οnclick="openText()">
</body>

</html>

發佈了9 篇原創文章 · 獲贊 5 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章