此頁面由社群從英文翻譯而來。了解更多並加入 MDN Web Docs 社群。
File
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
File 介面提供了檔案的資訊並且允許網頁中的 JavaScript 存取檔案的內容。
File 物件通常是從使用者於<input> 元素選擇之檔案所回傳的FileList 物件當中取得,也可以來自拖放操作所產生的DataTransfer 物件之中,或是由HTMLCanvasElement 物件(元素物件)執行mozGetAsFile() 方法後回傳。在 Gecko 引擎中,有專屬的程式碼能不需使用者操作即建立File 物件來表示本地端的任一檔案(請參考Implementation notes 以閱讀更多資訊)。
File 物件是一種特殊的Blob,且可被用在任何接受 Blob 物件的地方。特別是FileReader、URL.createObjectURL()、createImageBitmap() 和XMLHttpRequest.send() 都能夠同樣接受Blob 以及File。
請參考在網頁應用程式中使用本地檔案的更多細節與範例。
In this article
建構式
File()回傳一個新建構的
File物件。
屬性
File.lastModifiedRead only回值檔案的最後修改時間,為 UNIX epoch 毫秒(自西元 1970 年一月 1 日零時至今)。
File.lastModifiedDateRead only已棄用File物件所代表之檔案的最後修改日期(Date)。File.nameRead onlyFile物件所代表之檔案的名稱。File.sizeRead only回傳檔案大小。
File.webkitRelativePathRead onlyNon-standard回傳相對於
File的網址位置。File.typeRead only回傳檔案的MIME 類型。
File 實作了Blob,因此它也有以下可用屬性:
方法
File 介面沒有定義任何方法,但繼承了Blob 介面的方法:
Blob.slice([start[, end[, contentType]]])回傳新的
Blob物件,包含Blob來源之指定位元組範圍的資料。
規範
| Specification |
|---|
| File API> # file-section> |
瀏覽器相容性
實作備註
In Gecko, you can use this API from within chrome code. SeeUsing the DOM File API in chrome code for details. To use it from chrome code, JSM and Bootstrap scope, you have to import it using
Cu.importGlobalProperties(['File']);Starting from Gecko 6.0, privileged code (such as extensions) can pass an
nsIFileobject to the DOMFileconstructor to specify the file to reference.Starting from Gecko 8.0, you can use
new Fileto createFileobjects from XPCOM component code instead of having to instantiate thensIDOMFileobject directly. The constructor takes, in contrast toBlob, as second argument the filename. The filename can be any String.new File( Array parts, String filename, BlobPropertyBag properties);
The following non-standard properties and methods were removed in Gecko 7:
File.fileName,File.fileSize,File.getAsBinary(),File.getAsDataURL(),File.getAsText(string encoding)(Firefox bug 661876). Standard propertiesFile.name,Blob.size, and methods onFileReadershould be used instead.
參見
- 在網頁應用程式中使用本地檔案
FileReader- Using the DOM File API in chrome code (for privileged code running in Gecko, such as Firefox add-ons)