打字稿从 ArrayBuffer 获取 Int8Array

Typescript get Int8Array from ArrayBuffer

我正在使用以下代码将文件读取为 ArrayBuffer:

 var reader: FileReader = new FileReader();
 reader.readAsArrayBuffer(file);
 reader.onloadend = function (e) {
    var fileContent = reader.result;
    ...
 }

我需要获取字节数组形式的内容,但我做不到。 如果我尝试以这种方式转换:

var byteArray = new Int8Array(fileContent);

我收到此错误:无法将字符串分配给 ArrayBuffer |类似数组 |共享数组缓冲区。 fileContent 是字符串吗?我认为它应该是一个 ArrayBuffer,因为我正在使用 readAsArrayBuffer。 有没有办法从上传的文件中获取字节数组? 谢谢

您需要添加类型断言

var byteArray = new Int8Array(fileContent as ArrayBuffer);