我尝试将通过输入文件获得的文件转换为 byte[]。我尝试使用 FileReader,但我一定错过了一些东西:
var bytes = [];
var reader = new FileReader();
reader.onload = function () {
bytes = reader.result;
};
reader.readAsArrayBuffer(myFile);
但最后,我的 bytes var 不包含字节数组。
我看到这篇文章: Getting byte array through input type = file but it doesn’t ends with a byte[], and readAsBinaryString() is deprecated
我想念什么?
原文由 Lempkin 发布,翻译遵循 CC BY-SA 4.0 许可协议
面对类似的问题,“reader.result”确实没有以“byte[]”结束。所以我将它转换为 Uint8Array 对象。这也不是一个完美的“byte[]”,所以我不得不从中创建一个“byte[]”。这是我解决这个问题的方法,对我来说效果很好。
‘fileByteArray’ 是你要找的。看到评论,似乎你也做了同样的事情,仍然想分享这个方法。