nodejs读取文件和前端js读取文件

1.我用nodejs读取.dat十六进制的文件,返回的是一个buffer类,如Buffer <f4 00 7c 00 01 01 01 00 01 00 01 00 01 00 01 00 01 00 01 00 1c 00 16..>,然后按照readUInt16LE来获得这个buffer类的数据,返回的是这样的:
224 124 257...
2.我用前端按照buffer数组reader.readAsArrayBuffer(file),读取该文件,返回的是一个内存长度,然后我用new Uint16Array表示出来,获得数据,是这样的:
[512, 512, 20, 28277, 25956, 26982, 25966, 100, 0, 0, 0, 0,。。];

  1. 同样是读取一个无符号的16位整数值,为什么返回结果相差很大啊,文件内存肯定是一样的,是不是nodejs读取文件内存时返回的buffer和浏览器中js读取文件返回的数据机制不同啊?

跪求大神指点,谢谢

阅读 5.3k
1 个回答

没问题吧,要不你的系统可能是big-edian序的,用readUInt16BE就好了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题