gpt4 book ai didi

javascript - 在 Linux 中将二进制文件的前 100 个字节打印为 uint8

转载 作者:太空宇宙 更新时间:2023-11-04 10:01:58 25 4
gpt4 key购买 nike

以下 Javascript 示例读取并记录用户选择的文件的前 100 个字节(通过文件输入):

var blob = file.slice(0, 100);            

var fileReader = new FileReader();
fileReader.onload = function(event) {
var arrayBuffer = event.target.result;
var bytes = new Uint8Array(arrayBuffer);
console.log('bytes', bytes);
};

fileReader.readAsArrayBuffer(blob);

通过 hexdumpod 等 Linux 实用程序实现相同功能的等效方法是什么?

更新:我正在寻找 hexdump -d 但生成单字节小数,而不是 2 字节小数。

最佳答案

您可以使用 hexdump 执行此操作。 hexdump 的格式化语法,至少可以说,有点奇怪,标准的 man 页面帮不上什么忙。

tl;dr 版本是:

hexdump -n 100 -v -e '/1 "%03d\n"' your-file

如果您不关心前导零,您可以只使用 %d

现在这意味着什么:

  • -n 100 表示只查看输入的前 100 个字节
  • -v 表示显示每个字节。通常,重复在输出中折叠为 *
  • -e '/1 "%03d\n"' 是格式字符串(更多见下文)

格式字符串由“节”组成,这些“节”以 n/m 指示符开头,指示如何对字节进行计数和分组。 /1 表示输入应以 1 字节为一组进行处理。在计数/分组指示器之后是一个格式字符串,基本上是 printf() 格式的样式。

Here is a fairly good explanation of hexdump courtesy of the Suse folks.

关于javascript - 在 Linux 中将二进制文件的前 100 个字节打印为 uint8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55459173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com