js獲取本地檔案路徑怎麼寫

來源:趣味經驗館 2.47W
1.js怎樣獲取本地檔案的真實路徑

無法獲取本地檔案的絕對路徑,這裡涉及到一個瀏覽器安全問題。

js獲取本地檔案路徑怎麼寫

// 選擇檔案 function changefile () { var e = this; // 修正ie8下,檔案上傳異常 var files = e.files; if (files == undefined) { return false; } // 取得選擇檔案相關資料資訊 var file = files[0], filename = file.name, filesize = file.size; // 獲取檔案字尾名 var filetype = filename.substr(filename.lastindexof(".")).tolowercase(); }。

2.js獲取檔案路徑怎麼寫

<script> $("input[name=fileString]").change(function() { //var names = []; for (var i = 0; i < $(this).get(0).files.length; ++i) { // names.push($(this).get(0).files[i].name); //console.log($(this).get(0).files[i].mozFullPath); //方式一: var filePath = $(this).val(); console.log(filePath); //方式二: alert($('input[type=file]').val()); } //console.log(names); //方式三: alert($("input[name=fileString]").val()); }) </script>;注意:以上方式取到的都是檔案的偽路徑,由於瀏覽器的安全策略,Chrome瀏覽器及Chrome核心的瀏覽器是不可能獲取檔案在本地的真實路徑的。

IE瀏覽器可以通過設定安全級別,能獲取到真實路徑。

3.如何用JS 獲取本地資料夾的檔案列表

一、功能實現核心:FileSystemObject 物件 要在java-script中實現檔案操作功能,主要就是依靠FileSystemobject物件。

二、FileSystemObject程式設計 使用FileSystemObject 物件進行程式設計很簡單,一般要經過如下的步驟: 建立FileSystemObject物件、應用相關方法、訪問物件相關屬性 。 (一)建立FileSystemObject物件 建立FileSystemObject物件的 程式碼只要1行: var fso = new ActiveXObject("Scripting.FileSystemObject"); 上述程式碼執行後,fso就成為一個FileSystemObject物件例項。

(二)應用相關方法 建立物件例項後,就可以使用物件的相關方法了。比如,使用CreateTextFile方法建立一個文字檔案: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.createtextfile("c:myjstest.txt",true"); (三)訪問物件相關屬性 要訪問物件的相關屬性,首先要建立指向物件的控制代碼,這就要通過get系列方法實現:GetDrive負責獲取驅動器資訊,GetFolder負責獲取資料夾資訊,GetFile負責獲取檔案資訊。

比如,指向下面的程式碼後,f1就成為指向檔案c:test.txt的控制代碼: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.GetFile("c:myjstest.txt"); 然後,使用f1訪問物件的相關屬性。比如: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.GetFile("c:myjstest.txt"); alert("File last modified: " + f1.DateLastModified); 執行上面最後一句後,將顯示c:myjstest.txt的最後修改日期屬性值。

但有一點請注意:對於使用create方法建立的物件,就不必再使用get方法獲取物件控制代碼了,這時直接使用create方法建立的控制代碼名稱就可以: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.createtextfile("c:myjstest.txt",true"); alert("File last modified: " + f1.DateLastModified); 三、操作驅動器(Drives) 使用FileSystemObject物件來程式設計操作驅動器(Drives)和資料夾(Folders)很容易,這就象在Windows檔案瀏覽器中對檔案進行互動操作一樣,比如:拷貝、移動資料夾,獲取資料夾的屬性。 (一)Drives物件屬性 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:驅動器的路徑或者根目錄名稱。 (二)Drive物件操作例程 下面的例程顯示驅動器C的卷標、總容量和可用空間等資訊: 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"; alert(s); 四、操作資料夾(Folders) 涉及到資料夾的操作包括建立、移動、刪除以及獲取相關屬性。

Folder物件操作例程 : 下面的例程將練習獲取父資料夾名稱、建立資料夾、刪除資料夾、判斷是否為根目錄等操作: var fso, fldr, s = ""; // 建立FileSystemObject物件例項 fso = new ActiveXObject("Scripting.FileSystemObject"); // 獲取Drive 物件 fldr = fso.GetFolder("c:"); // 顯示父目錄名稱 alert("Parent folder name is: " + fldr + "n"); // 顯示所在drive名稱 alert("Contained on drive " + fldr.Drive + "n"); // 判斷是否為根目錄 if (fldr.IsRootFolder) alert("This is the root folder."); else alert("This folder isn't a root folder."); alert("nn"); // 建立新資料夾 fso.CreateFolder ("C:Bogus"); alert("Created folder C:Bogus" + "n"); // 顯示資料夾基礎名稱,不包含路徑名 alert("Basename = " + fso.GetBaseName("c:bogus") + "n"); // 刪除建立的資料夾 fso.DeleteFolder ("C:Bogus"); alert("Deleted folder C:Bogus" + "n"); 五、操作檔案(Files) 對檔案進行的操作要比以上介紹的驅動器(Drive)和資料夾(Folder)操作複雜些,基本上分為以下兩個類別:對檔案的建立、拷貝、移動、刪除操作和對檔案內容的建立、新增、刪除和讀取操作。下面分別詳細介紹。

(一)建立檔案 一共有3種方法可用於建立一個空文字檔案,這種檔案有時候也叫做文字流(text stream)。 第一種是使用CreateTextFile方法。

程式碼如下: var fso, f1; fso = new ActiveXObject("Scripting.FileSystemObject"); f1 = fso.CreateTextFile("c:testfile.txt", true); 第二種是使用OpenTextFile方法,並新增上ForWriting屬性,ForWriting的值為2。程式碼如下: var fso, ts; var 。

熱門標籤