MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

非标准
该特性是非标准的,请尽量不要在生产环境中使用它!

 

readAsBinaryString 方法会读取指定的 BlobFile 对象,当读取完成的时候,readyState  会变成已完成(DONE),并触发 loadend 事件,同时 result 属性将包含所读取文件原始二进制格式。

注意:从 2012 年 7 月 12 日起,该方法已从 W3C 工作草案废除。

语法

instanceOfFileReader.readAsBinaryString(blob);

参数

blob
即将被读取的 Blob 或者 File 对象。

例子

var canvas = document.createElement('canvas');
var height = 200;
var width  = 200;

canvas.width  = width;
canvas.height = height;

var ctx = canvas.getContext('2d');

ctx.strokeStyle = '#090';
ctx.beginPath();
ctx.arc(width/2, height/2, width/2 - width/10, 0, Math.PI*2);
ctx.stroke();

canvas.toBlob(function (blob) {
  var reader = new FileReader();

  reader.onloadend = function () {
    console.log(reader.result);
  }

  reader.readAsBinaryString(blob);
});

规范

该方法已从 FileAPI 标准移除,请使用 FileReader.readAsArrayBuffer() 代替。

浏览器兼容性

Feature Firefox (Gecko) Chrome Internet Explorer Opera Safari
Basic support 3.6 (1.9.2)[1] 7 未实现 12.02[3] 6.0
Feature Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
Basic support 32 3 10 11.5 6.0

[1] 在Gecko 2.0 beta 7 (Firefox 4.0 beta 7)之前,上述方法中所有的 Blob 参数都只能是一个 File 对象。根据最新的 FileAPI 草案,现在的所有的 Blob 参数既可以是 Blob 对象也可以是一个 File 对象。在Gecko 13.0 (Firefox 13.0 / Thunderbird 13.0 / SeaMonkey 2.10) 之前,FileReader.error 属性会返回一个 FileError 对象。根据最新的FileAPI草案,现在的  FileReader.error会返回一个 DOMError 对象。

[2] IE9有一个 File API Lab.

[3] Opera从11.10开始 部分支持 .

相关链接

文档标签和贡献者

 此页面的贡献者: Cattla
 最后编辑者: Cattla,