javascript 系統(tǒng)文件夾文件操作及參數(shù)介紹
更新時(shí)間:2013年01月08日 10:24:38 作者:
javascript文件操作包括寫入文件、當(dāng)前目錄文件、讀文件、刪除文件、批量刪除,未刪除文件夾,刪除不了當(dāng)前目錄文件等等,感興趣的朋友可以參考下
前期在.net 下進(jìn)行系統(tǒng)操作,同樣的功能實(shí)現(xiàn)起來非常復(fù)雜,沒想到用javascript竟然如此簡(jiǎn)單,所以在網(wǎng)上搜索了代碼并加以改進(jìn)。
function PathList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
WScript.Echo(sd.path);
//寫入文件
writeFile("a.text",sd.path);
//document.write(sd.path);
PathList(sd.path);
}
}
function FileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
var fc = new Enumerator(sd.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("B.text",fc.item());
}
WScript.Echo(sd.path);
//寫入文件
writeFile("a.text",sd.path);
//document.write(sd.path);
FileList(sd.path);
}
}
//當(dāng)前目錄文件
function CurFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fc = new Enumerator(fldr.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("c.text",fc.item());
}
}
/*
object.OpenTextFile(filename[, iomode[, create[, format]]])
參數(shù)
object
必選項(xiàng)。object 應(yīng)為 FileSystemObject 的名稱。
filename
必選項(xiàng)。指明要打開文件的字符串表達(dá)式。
iomode
可選項(xiàng)??梢允侨齻€(gè)常數(shù)之一:ForReading 、 ForWriting 或 ForAppending 。
create
可選項(xiàng)。Boolean 值,指明當(dāng)指定的 filename 不存在時(shí)是否創(chuàng)建新文件。如果創(chuàng)建新文件則值為 True ,如果不創(chuàng)建則為 False 。如果忽略,則不創(chuàng)建新文件。
format
可選項(xiàng)。使用三態(tài)值中的一個(gè)來指明打開文件的格式。如果忽略,那么文件將以 ASCII 格式打開。
設(shè)置
iomode 參數(shù)可以是下列設(shè)置中的任一種:
常數(shù) 值 描述
ForReading 1 以只讀方式打開文件。不能寫這個(gè)文件。
ForWriting 2 以寫方式打開文件
ForAppending 8 打開文件并從文件末尾開始寫。
format 參數(shù)可以是下列設(shè)置中的任一種:
值 描述
TristateTrue 以 Unicode 格式打開文件。
TristateFalse 以 ASCII 格式打開文件。
TristateUseDefault 使用系統(tǒng)默認(rèn)值打開文件。
*/
//讀文件
function readFile(filename){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile(filename,1);
var s = "";
while (!f.AtEndOfStream)
s += f.ReadLine()+"\n";
f.Close();
return s;
}
//寫文件
function writeFile(filename,filecontent){
var fso, f, s ;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.OpenTextFile(filename,8,true);
f.WriteLine(filecontent);
f.Close();
//alert('ok');
WScript.Echo("寫入成功");
}
//刪除文件
function deleteFile(filename,filecontent){
var fso, f, s ;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFile(filename);
f.Delete();
//alert('ok');
WScript.Echo("刪除成功");
}
//批量刪除,未刪除文件夾,刪除不了當(dāng)前目錄文件
function DelFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
var fc = new Enumerator(sd.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("B.text",fc.item());
fc.item().Delete();
WScript.Echo("刪除成功");
}
WScript.Echo(sd.path);
//寫入文件
writeFile("a.text",sd.path);
writeFile("a.text","刪除完畢");
//document.write(sd.path);
DelFileList(sd.path);
}
}
//刪除當(dāng)前目錄文件
function CurDelFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fc = new Enumerator(fldr.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("c.text",fc.item());
fc.item().Delete();
writeFile("c.text","刪除成功");
}
}
/*
Drive對(duì)象負(fù)責(zé)收集系統(tǒng)中的物理或邏輯驅(qū)動(dòng)器資源內(nèi)容,它具有如下屬性:
l TotalSize:以字節(jié)(byte)為單位計(jì)算的驅(qū)動(dòng)器大小。
l AvailableSpace或FreeSpace:以字節(jié)(byte)為單位計(jì)算的驅(qū)動(dòng)器可用空間。
l DriveLetter:驅(qū)動(dòng)器字母。
l DriveType:驅(qū)動(dòng)器類型,取值為:removable(移動(dòng)介質(zhì))、fixed(固定介質(zhì))、network(網(wǎng)絡(luò)資源)、CD-ROM或者RAM盤。
l SerialNumber:驅(qū)動(dòng)器的系列碼。
l FileSystem:所在驅(qū)動(dòng)器的文件系統(tǒng)類型,取值為FAT、FAT32和NTFS。
l IsReady:驅(qū)動(dòng)器是否可用。
l ShareName:共享名稱。
l VolumeName:卷標(biāo)名稱。
l Path和RootFolder:驅(qū)動(dòng)器的路徑或者根目錄名稱。
*/
function getDriveinfo()
{
var fso, drv, s ="";
fso = new ActiveXObject("Scripting.FileSystemObject");
drv = fso.GetDrive(fso.GetDriveName("c:\\"));
s += "Drive C:" + " - ";
s += drv.VolumeName + "\n";
s += "Total Space: " + drv.TotalSize / 1024;
s += " Kb" + "\n";
s += "Free Space: " + drv.FreeSpace / 1024;
s += " Kb" + "\n";
WScript.Echo(s);
}
CurFileList("D:\web_01");
FileList("D:\web_01");
getDriveinfo();
復(fù)制代碼 代碼如下:
function PathList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
WScript.Echo(sd.path);
//寫入文件
writeFile("a.text",sd.path);
//document.write(sd.path);
PathList(sd.path);
}
}
function FileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
var fc = new Enumerator(sd.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("B.text",fc.item());
}
WScript.Echo(sd.path);
//寫入文件
writeFile("a.text",sd.path);
//document.write(sd.path);
FileList(sd.path);
}
}
//當(dāng)前目錄文件
function CurFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fc = new Enumerator(fldr.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("c.text",fc.item());
}
}
/*
object.OpenTextFile(filename[, iomode[, create[, format]]])
參數(shù)
object
必選項(xiàng)。object 應(yīng)為 FileSystemObject 的名稱。
filename
必選項(xiàng)。指明要打開文件的字符串表達(dá)式。
iomode
可選項(xiàng)??梢允侨齻€(gè)常數(shù)之一:ForReading 、 ForWriting 或 ForAppending 。
create
可選項(xiàng)。Boolean 值,指明當(dāng)指定的 filename 不存在時(shí)是否創(chuàng)建新文件。如果創(chuàng)建新文件則值為 True ,如果不創(chuàng)建則為 False 。如果忽略,則不創(chuàng)建新文件。
format
可選項(xiàng)。使用三態(tài)值中的一個(gè)來指明打開文件的格式。如果忽略,那么文件將以 ASCII 格式打開。
設(shè)置
iomode 參數(shù)可以是下列設(shè)置中的任一種:
常數(shù) 值 描述
ForReading 1 以只讀方式打開文件。不能寫這個(gè)文件。
ForWriting 2 以寫方式打開文件
ForAppending 8 打開文件并從文件末尾開始寫。
format 參數(shù)可以是下列設(shè)置中的任一種:
值 描述
TristateTrue 以 Unicode 格式打開文件。
TristateFalse 以 ASCII 格式打開文件。
TristateUseDefault 使用系統(tǒng)默認(rèn)值打開文件。
*/
//讀文件
function readFile(filename){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile(filename,1);
var s = "";
while (!f.AtEndOfStream)
s += f.ReadLine()+"\n";
f.Close();
return s;
}
//寫文件
function writeFile(filename,filecontent){
var fso, f, s ;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.OpenTextFile(filename,8,true);
f.WriteLine(filecontent);
f.Close();
//alert('ok');
WScript.Echo("寫入成功");
}
//刪除文件
function deleteFile(filename,filecontent){
var fso, f, s ;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFile(filename);
f.Delete();
//alert('ok');
WScript.Echo("刪除成功");
}
//批量刪除,未刪除文件夾,刪除不了當(dāng)前目錄文件
function DelFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
var fc = new Enumerator(sd.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("B.text",fc.item());
fc.item().Delete();
WScript.Echo("刪除成功");
}
WScript.Echo(sd.path);
//寫入文件
writeFile("a.text",sd.path);
writeFile("a.text","刪除完畢");
//document.write(sd.path);
DelFileList(sd.path);
}
}
//刪除當(dāng)前目錄文件
function CurDelFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fc = new Enumerator(fldr.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("c.text",fc.item());
fc.item().Delete();
writeFile("c.text","刪除成功");
}
}
/*
Drive對(duì)象負(fù)責(zé)收集系統(tǒng)中的物理或邏輯驅(qū)動(dòng)器資源內(nèi)容,它具有如下屬性:
l TotalSize:以字節(jié)(byte)為單位計(jì)算的驅(qū)動(dòng)器大小。
l AvailableSpace或FreeSpace:以字節(jié)(byte)為單位計(jì)算的驅(qū)動(dòng)器可用空間。
l DriveLetter:驅(qū)動(dòng)器字母。
l DriveType:驅(qū)動(dòng)器類型,取值為:removable(移動(dòng)介質(zhì))、fixed(固定介質(zhì))、network(網(wǎng)絡(luò)資源)、CD-ROM或者RAM盤。
l SerialNumber:驅(qū)動(dòng)器的系列碼。
l FileSystem:所在驅(qū)動(dòng)器的文件系統(tǒng)類型,取值為FAT、FAT32和NTFS。
l IsReady:驅(qū)動(dòng)器是否可用。
l ShareName:共享名稱。
l VolumeName:卷標(biāo)名稱。
l Path和RootFolder:驅(qū)動(dòng)器的路徑或者根目錄名稱。
*/
function getDriveinfo()
{
var fso, drv, s ="";
fso = new ActiveXObject("Scripting.FileSystemObject");
drv = fso.GetDrive(fso.GetDriveName("c:\\"));
s += "Drive C:" + " - ";
s += drv.VolumeName + "\n";
s += "Total Space: " + drv.TotalSize / 1024;
s += " Kb" + "\n";
s += "Free Space: " + drv.FreeSpace / 1024;
s += " Kb" + "\n";
WScript.Echo(s);
}
CurFileList("D:\web_01");
FileList("D:\web_01");
getDriveinfo();
相關(guān)文章
JS實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí)的注冊(cè)頁(yè)面
這篇文章給大家分享一段實(shí)例代碼發(fā)送驗(yàn)證碼之后開始60S倒計(jì)時(shí)功能,具體實(shí)例代碼大家參考下本文2018-01-01JS實(shí)現(xiàn)網(wǎng)頁(yè)游戲中滑塊響應(yīng)鼠標(biāo)點(diǎn)擊移動(dòng)效果
這篇文章主要介紹了JS實(shí)現(xiàn)網(wǎng)頁(yè)游戲中滑塊響應(yīng)鼠標(biāo)點(diǎn)擊移動(dòng)效果,涉及JavaScript針對(duì)頁(yè)面鼠標(biāo)事件、滾動(dòng)事件及元素屬性等相關(guān)操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10詳解js實(shí)時(shí)獲取并顯示當(dāng)前時(shí)間的方法
這篇文章主要介紹了js實(shí)時(shí)獲取并顯示當(dāng)前時(shí)間的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-0520個(gè)你不得不知道的JS async/await實(shí)用技巧
JavaScript的async和await關(guān)鍵詞是現(xiàn)代JavaScript異步編程的核心,它們讓異步代碼看起來和同步代碼幾乎一樣,使得異步編程變得更加直觀和易于管理,本文介紹20個(gè)關(guān)于async/await的實(shí)用技巧,將大大提升編程效率和代碼的清晰度,需要的朋友可以參考下2023-12-12WebSocket中心跳檢測(cè)與斷開重連機(jī)制詳解
心跳檢測(cè)是指在WebSocket連接過程中定時(shí)向服務(wù)端發(fā)送和接收心跳消息,來確定當(dāng)前連接是否是正常狀態(tài)的檢測(cè)機(jī)制,斷開重連是指在WebSocket不正常斷開連接后,進(jìn)行重新連接的策略,下面我們就來看看這二者的具體實(shí)現(xiàn)吧2024-01-01javascript實(shí)現(xiàn)隨機(jī)抽獎(jiǎng)功能
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)隨機(jī)抽獎(jiǎng)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12