JavaScript readAsBinaryString Function on E11

后端 未结 6 1876
攒了一身酷
攒了一身酷 2020-12-23 18:35

In this page http://www.html5rocks.com/en/tutorials/file/dndfiles/ if you scroll down to example \"Example: Slicing a file. Try it!\" you will see uses of readAsBin

6条回答
  •  Happy的楠姐
    2020-12-23 19:13

    This is my solution.

    var reader = new FileReader();
    reader.readAsBinaryString(fileData);
    reader.onload = function(e) {
      if (reader.result) reader.content = reader.result;
      var base64Data = btoa(reader.content);
      //...
    }
    //extend FileReader
    if (!FileReader.prototype.readAsBinaryString) {
        FileReader.prototype.readAsBinaryString = function (fileData) {
           var binary = "";
           var pt = this;
           var reader = new FileReader();      
           reader.onload = function (e) {
               var bytes = new Uint8Array(reader.result);
               var length = bytes.byteLength;
               for (var i = 0; i < length; i++) {
                   binary += String.fromCharCode(bytes[i]);
               }
            //pt.result  - readonly so assign binary
            pt.content = binary;
            $(pt).trigger('onload');
        }
        reader.readAsArrayBuffer(fileData);
        }
    }
    

提交回复
热议问题