javascript 系統檔案夾檔案操作(很強大哦)

來源:互聯網
上載者:User
前期在.net 下進行系統操作,同樣的功能實現起來非常複雜,沒想到用javascript竟然如此簡單,所以在網上搜尋了代碼並加以改進。
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);            }        }//目前的目錄檔案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]]])參數object必選項。object 應為 FileSystemObject 的名稱。filename必選項。指明要開啟檔案的字串運算式。iomode可選項。可以是三個常數之一:ForReading 、 ForWriting 或 ForAppending 。create可選項。Boolean 值,指明當指定的 filename 不存在時是否建立新檔案。如果建立新檔案則值為 True ,如果不建立則為 False 。如果忽略,則不建立新檔案。format可選項。使用三態值中的一個來指明開啟檔案的格式。如果忽略,那麼檔案將以 ASCII 格式開啟。設定iomode 參數可以是下列設定中的任一種:常數 值 描述ForReading 1 以唯讀方式開啟檔案。不能寫這個檔案。ForWriting 2 以寫方式開啟檔案ForAppending 8 開啟檔案並從檔案末尾開始寫。format 參數可以是下列設定中的任一種:值 描述TristateTrue 以 Unicode 格式開啟檔案。TristateFalse 以 ASCII 格式開啟檔案。TristateUseDefault 使用系統預設值開啟檔案。*///讀檔案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("刪除成功");}//大量刪除,未刪除檔案夾,刪除不了目前的目錄檔案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);            }        }//刪除目前的目錄檔案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對象負責收集系統中的物理或邏輯磁碟機資源內容,它具有如下屬性:l TotalSize:以位元組(byte)為單位計算的磁碟機大小。l AvailableSpace或FreeSpace:以位元組(byte)為單位計算的磁碟機可用空間。l DriveLetter:磁碟機字母。l DriveType:磁碟機類型,取值為:removable(移動介質)、fixed(固定介質)、network(網路資源)、CD-ROM或者RAM盤。l SerialNumber:磁碟機的系列碼。l FileSystem:所在磁碟機的檔案系統類型,取值為FAT、FAT32和NTFS。l IsReady:磁碟機是否可用。l ShareName:共用名稱。l VolumeName:卷標名稱。l Path和RootFolder:磁碟機的路徑或者根目錄名稱。*/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();

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.