|
復(fù)制代碼 代碼如下:
<script language="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
fso.DeleteFile("c://autoexec.bat", true); //請(qǐng)注意啊!把a(bǔ)utoexec.bat改為你C盤中的其它文件名,你不改也可以!先把a(bǔ)utoexec.bat備份啊!
-->
</script>
是不是發(fā)現(xiàn)你C盤的Autoexec.bat文件不見呢?呵呵其實(shí)當(dāng)那個(gè)文件運(yùn)行時(shí)IE會(huì)提醒你當(dāng)前使用的ActiveX控件不安全,詢問你是否運(yùn)行,但由于你和我一樣迫切想試試究竟效果如何,因此你會(huì)毫不猶疑的按下 [確定] .... 其實(shí)這是使用了FileSystemObject來(lái)實(shí)現(xiàn)的,要了解更詳細(xì)的用法與例子的話,點(diǎn)這里下載 JScript的中文說(shuō)明文檔 或者買本 <<深入學(xué)習(xí):JavaScript開發(fā)與實(shí)例>> 也可以看看無(wú)憂腳本整理的例子,讓大家學(xué)習(xí)學(xué)習(xí). 讓我們先來(lái)看看有什么屬性與函數(shù)可用,后面會(huì)對(duì)部分函數(shù)做些小例子
方法或者屬性 描述
BuildPath()
生成一個(gè)文件路徑
復(fù)制代碼 代碼如下:
CopyFile() 復(fù)制文件
CopyFolder() 復(fù)制目錄
CreateFolder() 創(chuàng)建新目錄
CreateTextFile() 生成一個(gè)文件
DeleteFile() 刪除一個(gè)文件
DeleteFolder() 刪除一個(gè)目錄
DriveExists() 檢驗(yàn)盤符是否存在
Drives 返回盤符的集合
FileExists() 檢驗(yàn)文件是否存在
FolderExists 檢驗(yàn)一個(gè)目錄是否存在
GetAbsolutePathName() 取得一個(gè)文件的絕對(duì)路徑
GetBaseName() 取得文件名
GetDrive() 取得盤符名
GetDriveName() 取得盤符名
GetExtensionName() 取得文件的后綴
GetFile() 生成文件對(duì)象
GetFileName() 取得文件名
GetFolder() 取得目錄對(duì)象
GetParentFolderName 取得文件或目錄的父目錄名
GetSpecialFolder() 取得特殊的目錄名
GetTempName() 生成一個(gè)臨時(shí)文件對(duì)象
MoveFile() 移動(dòng)文件
MoveFolder() 移動(dòng)目錄
OpenTextFile()
打開一個(gè)文件流實(shí)例說(shuō)明BuildPath(路徑,文件名) //這個(gè)方法會(huì)對(duì)給定的路徑加上文件,并自動(dòng)加上分界符
復(fù)制代碼 代碼如下:
<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(源文件, 目標(biāo)文件, 覆蓋) //復(fù)制源文件到目標(biāo)文件,當(dāng)覆蓋值為true時(shí),如果目標(biāo)文件存在會(huì)把文件覆蓋
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
var newpath = fso.CopyFile("c://autoexec.bat", "d://autoexec.bak");
-->
</SCRIPT>
CopyFolder(對(duì)象目錄,目標(biāo)目錄 ,覆蓋) //復(fù)制對(duì)象目錄到目標(biāo)目錄,當(dāng)覆蓋為true時(shí),如果目標(biāo)目錄存在會(huì)把文件覆蓋
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
fso.CopyFolder("c://WINDOWS//Desktop", "d://"); //把C盤的Desktop目錄復(fù)制到D盤的根目錄
-->
</SCRIPT>
CreateFolder(目錄名) //創(chuàng)建一個(gè)新的目錄
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
var newFolderName = fso.CreateFolder("c://51JS"); //在C盤上創(chuàng)建一個(gè)51JS的目錄
-->
</SCRIPT>
CreateTextFile(文件名, 覆蓋) //創(chuàng)建一個(gè)新的文件,如果此文件已經(jīng)存在,你需要把覆蓋值定為true
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
var newFileObject = fso.CreateTextFile("c://autoexec51JS.bat", true); //腳本將在C盤創(chuàng)建一個(gè)叫 autoexec51JS.bat的文件
-->
</SCRIPT>
DeleteFile(文件名, 只讀?) //刪除一個(gè)文件,如果文件的屬性是只讀的話,你需要把只讀值設(shè)為true
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject"); //為了安全我先把要?jiǎng)h除的autoexec.bat備份到你的D盤
var newpath = fso.CopyFile("c://autoexec.bat", "d://autoexec.bat"); //把C盤的autoexec.bat文件刪除掉
fso.DeleteFile("c://autoexec.bat", true);
-->
</SCRIPT>
DeleteFolder(文件名, 只讀?)//刪除一個(gè)目錄,如果目錄的屬性是只讀的話,你需要把只讀值設(shè)為true
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
fso.CopyFolder("c://WINDOWS//Desktop", "d://"); //為了安全我先把你C盤的Desktop目錄復(fù)制到你D盤的根目錄
fso.DeleteFolder("c://WINDOWS//Desktop", true); //把你的Desktop目錄刪除,但因?yàn)閐esktop是系統(tǒng)的東西,所以不能全部刪除,但.........
-->
</SCRIPT>
DriveExists(盤符) //檢查一個(gè)盤是否存在,如果存在就返會(huì)真,不存在就返回.......
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
hasDriveD = fso.DriveExists("d"); //檢查系統(tǒng)是否有D盤存在
hasDriveZ = fso.DriveExists("z"); //檢查系統(tǒng)是否有Z盤存在
if (hasDriveD) alert("你的系統(tǒng)內(nèi)有一個(gè)D盤");
if (!hasDriveZ) alert("你的系統(tǒng)內(nèi)沒有Z盤");
-->
</SCRIPT>
FileExists(文件名) //檢查一個(gè)文件是否存在,如果存在就返會(huì)真,不存在就返回.......
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
fileName = fso.FileExists("c://autoexec.bat");
if (fileName) alert("你在C盤中有autoexec.bat文件,按下確定后這個(gè)文件將被刪除!"); //開個(gè)玩笑:)
-->
</SCRIPT>
FolderExists(目錄名) //檢查一個(gè)目錄是否存在,如果存在就返會(huì)真,不存在就返回.......
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
folderName = fso.FolderExists("c://WINDOWS//Fonts");
if (folderName) alert("按下確定后系統(tǒng)的字庫(kù)將被刪除!"); //開個(gè)玩笑:)
-->
</SCRIPT>
GetAbsolutePathName(文件對(duì)象) //返回文件對(duì)象在系統(tǒng)的絕對(duì)路徑
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
pathName = fso.GetAbsolutePathName("c://autoexec.bat");
alert(pathName);
-->
</SCRIPT>
GetBaseName(文件對(duì)象) //返回文件對(duì)象的文件名
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
baseName = fso.GetBaseName("c://autoexec.bat"); //取得autoexec.bat的文件名autoexec
alert(baseName);
-->
</SCRIPT>
GetExtensionName(文件對(duì)象) //文件的后綴
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
exName = fso.GetExtensionName("c://autoexec.bat"); //取得autoexec.bat后綴bat
alert(exName);
-->
</SCRIPT>
GetParentFolderName(文件對(duì)象) //取得父級(jí)的目錄名
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
parentName = fso.GetParentFolderName("c://autoexec.bat"); //取得autoexec.bat的父級(jí)目錄C盤
alert(parentName);
-->
</SCRIPT>
GetSpecialFolder(目錄代碼) //取得系統(tǒng)中一些特別的目錄的路徑,目錄代碼有3個(gè)分別是 0:安裝Window的目錄 1:系統(tǒng)文件目錄 2:臨時(shí)文件目錄
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
tmpFolder = fso.GetSpecialFolder(2); //取得系統(tǒng)臨時(shí)文件目錄的路徑如我的是 C:/windows/temp
alert(tmpFolder);
-->
</SCRIPT>
GetTempName() //生成一個(gè)隨機(jī)的臨時(shí)文件對(duì)象,會(huì)以rad帶頭后面跟著些隨機(jī)數(shù),就好象一些軟件在安裝時(shí)會(huì)生成*.tmp
復(fù)制代碼 代碼如下:
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
tmpName = fso.GetTempName(); //我在測(cè)試時(shí)就生成了radDB70E.tmp
alert(tmpName);
-->
</SCRIPT>
MoveFile(源文件, 目標(biāo)文件) //把源文件移到目標(biāo)文件的位置
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject");
var newpath = fso.MoveFile("c://autoexec.bat", "d://autoexec.bat"); //把C盤的autoexec.bat文件移移動(dòng)到D盤
-->
</SCRIPT>To Be Continue! 還有幾個(gè)屬性沒寫例子,遲點(diǎn)就有了,是否覺得每次都會(huì)問你是否運(yùn)行很麻煩?或者........,想知道如何不用詢問就運(yùn)行?(不要用腳本來(lái)破壞別人的系統(tǒng)啊!)
用JavaScript操作文件系統(tǒng)創(chuàng)建快捷方式
復(fù)制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>用JavaScript創(chuàng)建快捷方式</TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<script language="Javascript">
function createLink(){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var shell = new ActiveXObject("WScript.Shell");
var tagFolder = "c://link";
if(!fso.FolderExists(tagFolder ))
{
fso.CreateFolder(tagFolder);
alert("Create success!");
}
if(!fso.FileExists(tagFolder + "http://eip.lnk"))
{
var link = shell.CreateShortcut(tagFolder + "http://eip.lnk");
link.Description = "打開一個(gè)程序的快捷方式";
link.TargetPath = "C://Program Files//FlashFXP//flashfxp.exe";
link.WindowStyle = 3;
link.WorkingDirectory = "C://Program Files//FlashFXP";
link.Save();
}
}
</script>
<BODY>
<input type="button" value="click me" onclick="createLink();"/>
</BODY>
</HTML>
JavaScript技術(shù):javascript 操作文件 實(shí)現(xiàn)方法小結(jié),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。