--- title: FileReaderSync slug: Web/API/FileReaderSync tags: - API - NeedsMarkupWork translation_of: Web/API/FileReaderSync ---
{{APIRef("File API")}}
FileReaderSync接口允许以同步的方式读取File或Blob对象中的内容。
该接口只在workers里可用,因为在主线程里进行同步I/O操作可能会阻塞用户界面。
ArrayBuffer readAsArrayBuffer(Blob blob);{{ gecko_minversion_inline("8.0") }} |
DOMString readAsBinaryString(Blob blob);{{ gecko_minversion_inline("8.0") }} |
DOMString readAsText(Blob blob, optional DOMString encoding);{{ gecko_minversion_inline("8.0") }} |
DOMString readAsDataURL(Blob blob);{{ gecko_minversion_inline("8.0") }} |
该接口没有任何属性。
该方法可以读取指定的 Blob 或者 File对象中的内容。当读取完毕后,返回一个 ArrayBuffer 对象,里面包含了被读取文件的内容数据。如果在读取过程中发生了错误,则会抛出相关的异常。
ArrayBuffer readAsArrayBuffer( in Blob blob );
blobBlob 或 File 对象.一个 ArrayBuffer 对象,包含了被读取文件的内容.
该方法可能引发下述异常:
NotFoundErrorBlob或File对象指代的资源无法找到时,触发该异常.比如,该资源已被删除的情况下.SecurityErrorNotReadableErrorEncodingError该方法可以读取指定的 Blob 或者 File对象的内容。当读取完毕后,返回一个DOMString对象,里面包含了被读取文件的二进制数据.如果在读取过程中发生了错误,则会抛出相关的异常。
readAsArrayBuffer()来替代.String readAsBinaryString( in Blob blob );
blobBlob 或 File 对象.一个DOMString对象,包含了从资源中读取的二进制数据.
该方法可能引发下述异常:
NotFoundErrorBlob或File对象指代的资源无法找到时,触发该异常。比如,该资源已被删除的情况下。SecurityErrorNotReadableErrorEncodingError该方法可以读取指定的 Blob 或者 File对象的内容。当读取完毕后,返回一个DOMString对象,里面包含了被读取文件的内容数据。可选参数 encoding 用来表示文件的编码类型,如果省略该参数,则该方法会使用一些算法自动检测文件的编码类型.如果在读取过程中发生了错误,则会抛出相关的异常。
String readAsText(
in Blob blob,
in DOMString encoding {{ optional_inline() }}
);
blobBlob 或 File 对象。encoding一个DOMString对象,包含了被读取文件的内容。
该方法可能引发下述异常:
NotFoundErrorBlob或File对象指代的资源无法找到时,触发该异常。比如,该资源已被删除的情况下。SecurityErrorNotReadableError该方法可以读取指定的 Blob 或者 File对象的内容。当读取完毕后,返回一个Data URL格式的DOMString对象,里面包含了被读取文件的内容数据。如果在读取过程中发生了错误,则会抛出相关的异常。
String readAsDataURL( in Blob file );
一个DOMString对象,data URL格式,包含了被读取文件的内容。
该方法可能引发下述异常:
NotFoundErrorBlob或File对象指代的资源无法找到时,触发该异常。比如,该资源已被删除的情况下。SecurityErrorNotReadableErrorEncodingError
| Specification | Status | Comment |
|---|---|---|
| {{SpecName('File API','#FileReaderSync','FileReaderSync')}} | {{Spec2('File API')}} | Initial definition. |
{{Compat("api.FileReaderSync")}}