如果我想传输整个二进制文件,我可以做一些简单的事情:
res.sendfile(file);
我还可以打开一个流,然后再手动执行:
var stream = require('fs').createReadStream(file);
stream.pipe(res);
我无法找到一种只发送部分(非常大)文件的方法。在我的特定情况下,我有一个interleaved int16s的二进制文件,我希望能够从其余的数据中分离出一组数据。即,如果我想要文件中的第5组数据,我需要:
直到到达文件末尾:
3A。 -read /发送两个字节
3B。 -seek 2个字节乘以文件中的数据集(少于一个)到下一个两个字节的集合(让我们说文件中有16组数据 - >寻找30个字节)
非常感谢任何帮助,谢谢!