在Node.js中用.bin文件内容填充一个types化的数组

在我的服务器文件系统上,我有一个目录,其中包含一些充满16位整数的.bin文件。

如何在Node.js中加载一个Uint16Arrayvariables和特定.bin文件的内容?

我已经尝试过了:

var arrayFromBinFile = new Uint16Array('./myDirectoryContainingBinFiles/selectedFile.bin') 

通过在node.js中使用console.log ,我得到的是:

 { BYTES_PER_ELEMENT: 2, get: [Function: get], set: [Function: set], slice: [Function: slice], subarray: [Function: subarray], buffer: { slice: [Function: slice], byteLength: 0 }, length: 0, byteOffset: 0, byteLength: 0 } 

我想出了以下解决scheme

 fs.readFile('./myDirectoryContainingBinFiles/selectedFile.bin', function(err, data) { if (err) throw err; terrainData = new Uint16Array(toArrayBuffer(data)); }); 

在将二进制NodeJS缓冲区转换为JavaScript ArrayBuffer的接受答案中报告的toArrayBuffer函数被定义为

 function toArrayBuffer(buffer) { var ab = new ArrayBuffer(buffer.length); var view = new Uint8Array(ab); for (var i = 0; i < buffer.length; ++i) { view[i] = buffer[i]; } return ab; }