aau*_*tho 5 javascript filereader arraybuffer
我正在尝试使用 FileReader API 将本地文件读入 ArrayBuffer,如下所示
let reader = new FileReader();
reader.onload = function(e) {
let arrayBuffer = new Uint8Array(reader.result);
console.log(arrayBuffer);
}
reader.readAsArrayBuffer(new File([], 'data.txt'));
Run Code Online (Sandbox Code Playgroud)
但我得到一个空的 arrayBuffer
如何在浏览器中将此本地文件作为 ArrayBuffer 读取?
谢谢。
您无法通过浏览器按路径名读取文件。您需要让用户与文件系统交互并选择一个文件,然后才能读取内容。
const readFile = e => {
const file = e.target.files[0]
let reader = new FileReader();
reader.onload = function(e) {
let arrayBuffer = new Uint8Array(reader.result);
console.log(arrayBuffer);
}
reader.readAsArrayBuffer(file);
}
document.querySelector("#fileItem").onchange=readFileRun Code Online (Sandbox Code Playgroud)
<input id="fileItem" type="file">Run Code Online (Sandbox Code Playgroud)