--- title: File slug: Web/API/File tags: - API - File API - Reference - Web - 文件 API translation_of: Web/API/File ---
{{APIRef}}

文件(File)接口提供有关文件的信息,并允许网页中的 JavaScript 访问其内容。

通常情况下, File 对象是来自用户在一个 {{HTMLElement("input")}} 元素上选择文件后返回的 {{domxref("FileList")}} 对象,也可以是来自由拖放操作生成的 {{domxref("DataTransfer")}} 对象,或者来自 {{domxref("HTMLCanvasElement")}} 上的 mozGetAsFile() API。在Gecko中,特权代码可以创建代表任何本地文件的File对象,而无需用户交互(有关详细信息,请参阅{{anch("注意事项")}}。

File 对象是特殊类型的 {{domxref("Blob")}},且可以用在任意的 Blob 类型的 context 中。比如说, {{domxref("FileReader")}}, {{domxref("URL.createObjectURL()")}}, {{domxref("ImageBitmapFactories.createImageBitmap()", "createImageBitmap()")}}, 及 {{domxref("XMLHttpRequest", "", "send()")}} 都能处理 Blob File

参考 从Web应用程序使用文件 了解更多信息和例子。

构造函数

{{domxref("File.File", "File()")}}
返回一个新构建的文件对象(File)。

属性

File 接口也继承了 {{domxref("Blob")}} 接口的属性:

{{domxref("File.lastModified")}} {{readonlyinline}}
返回当前 File 对象所引用文件最后修改时间,自 UNIX 时间起始值(1970年1月1日 00:00:00 UTC)以来的毫秒数。
{{domxref("File.lastModifiedDate")}} {{readonlyinline}} {{deprecated_inline}} {{gecko_minversion_inline("15.0")}}
返回当前 File 对象所引用文件最后修改时间的 Date 对象。
{{domxref("File.name")}} {{readonlyinline}}
返回当前 File 对象所引用文件的名字。
{{domxref("File.size")}} {{readonlyinline}}
返回文件的大小。
{{domxref("File.webkitRelativePath")}} {{readonlyinline}} {{non-standard_inline}}
返回 {{domxref("File")}} 相关的 path 或 URL。
{{domxref("File.type")}} {{readonlyinline}}
返回文件的 多用途互联网邮件扩展类型(MIME Type)

方法

File 接口没有定义任何方法,但是它从 {{domxref("Blob")}} 接口继承了以下方法:

{{domxref("Blob.slice()", "Blob.slice([start[, end[, contentType]]])")}}
返回一个新的 Blob 对象,它包含有源 Blob 对象中指定范围内的数据。

规范

规范 状态 注释
{{SpecName('File API')}} {{Spec2('File API')}} Initial definition

浏览器兼容性

{{Compat("api.File")}}

注意事项

参见