文件 / 二进制 / 压缩

十六进制查看器逐字节看清文件,也能把 dump 还原成文件

打开文件即可浏览字节;切到「粘贴 Hex」可以把 xxd 或 hexdump -C 的输出还原成文件。

十六进制查看器

输入

example-1x1.png

70 字节(0x46)

把文件拖到这里,或点击「打开文件」。

文件只在浏览器本地按需分块读取,不会上传。

Hex 视图

00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 .PNG........IHDR
00000010 00 00 00 01 00 00 00 01 08 06 00 00 00 1f 15 c4 ................
00000020 89 00 00 00 0d 49 44 41 54 78 da 63 64 60 f8 5f .....IDATx.cd`._
00000030 0f 00 02 87 01 80 eb 47 ba 92 00 00 00 00 49 45 .......G......IE
00000040 4e 44 ae 42 60 82 ND.B`.
选区 0x00000000–0x00000000(1 字节)

点击字节移动光标;Shift+点击或 Shift+方向键扩展选区;视图内可用 PageUp、PageDown、Home、End。

检查器 @ 0x00000000(0) · 小端

二进制位
10001001
int8
-119
uint8
137
int16
20617
uint16
20617
int32
1196314761
uint32
1196314761
int64
727905341920923785
uint64
727905341920923785
float32
52816.53515625
float64
5.292397776572611e-260
UTF-8
—

选项

example-1x1.png:70 字节。

一个 .bin 固件、一段程序写出的配置数据、一张打不开的图片——文件不肯说明自己是什么的时候,就该打开十六进制查看器(也有人叫它二进制查看器或 16 进制查看器)。左边的偏移告诉你在第几个字节,中间的 Hex 列原样列出每个字节,右边的 ASCII 列让夹在其中的可读字符串一眼就能看到。

在 Linux 下用 xxd 或 hexdump -C 也能看,这个十六进制查看器输出的就是同样的排版,可以逐行对照。命令行给不了的是光标:点中一个字节,检查器会按小端或大端读出从这里开始的整数和浮点数;同一页还能把别人贴在工单里的 Hex 文本还原成原来的二进制文件。

为什么用这个十六进制查看器

排版和命令行一样,但可以指着某个字节问它是什么值。

大文件秒开

只读取屏幕上的 16 行和光标处的 8 个字节。3 GB 的镜像和 3 KB 的图标滚动起来一样流畅,也不会只截取前 1 MB。

左侧一个很长的文件,其中一小段被框出,放大映射到右侧 16 行的 Hex 网格,光标所在字节被高亮。

粘贴的 Hex 文本能还原成文件

粘贴 xxd 或 hexdump -C 的输出,包括 hexdump 用来省略重复行的 * 行,就能下载成 .bin。偏移不连续的行会报出行号,而不是像 xxd -r 那样用零补齐。

一段 Hex dump 中有一行因偏移不连续被红框标出,箭头指向还原出的二进制文件。

小端、大端一键切换

检查器把光标处的字节读成 8 到 64 位整数和 32、64 位浮点数。切换字节序,就能看到同样四个字节变成两个完全不同的数。

四个不同颜色的字节按两种顺序读取:左边倒序表示小端,右边原序表示大端,各自得到长度不同的数值条。

用好视图的三个要点

01

打开文件,或粘贴 Hex 文本

把文件拖进输入区或点「打开文件」,视图立即出现,而且不会把整个文件读进内存。「粘贴 Hex」接受 xxd、hexdump -C、纯 Hex 和 C 数组,停止输入 350 毫秒后自动转换。

  • 关掉「自动转换」后,只在点「转换」或按 Ctrl/Cmd+Enter 时转换。
  • 粘贴模式下点「载入示例」会放入一段带 * 行的 hexdump -C 文本,可以看到压缩行是怎么展开的。
02

用键盘移动,比拖滚动条快

点中一个字节后,用方向键、PageUp、PageDown 移动;Ctrl/Cmd+Home 和 Ctrl/Cmd+End 跳到首尾。「跳转到偏移」接受 0x1A0、1A0h 和十进制 416。

  • 搜索默认按 Hex 字节查找,89 50 4E 47、FF D8 FF 这样的文件头直接能搜;要找字符串就切到「文本」。
03

只导出选中的那一段

Shift+点击,或输入起始偏移和长度来选中字节,再选导出格式。hexdump -C 和 xxd 格式的偏移列保留文件里的真实偏移,导出的片段仍能和原文件对上。

  • 文本导出上限 1 MiB;「下载选区(.bin)」直接复制字节,没有这个限制。

能对字节做什么

与命令行一致的排版

小写十六进制,第 8 个字节后多空一格,不可打印字节显示为点,每行 8、16 或 32 字节。00 字节会淡化显示,大片填充区一眼就能跳过。

按字节或文本搜索

在后台 Worker 里对整个文件搜索 Hex 序列或 UTF-8 字符串,带进度条、命中计数和上一个、下一个按钮。跨越分块边界的命中也不会漏掉。

数据检查器

从光标位置读出有符号和无符号的 8、16、32、64 位整数、float32、float64、当前字节的二进制位,以及从这里开始的 UTF-8 字符。

四种文本格式和原始字节

把选区复制或下载为 hexdump -C、xxd、xxd -p 样式的纯 Hex、xxd -i 样式的 C 数组,或者直接保存原始字节为 .bin。

限制与解析规则

只读,不会改动任何字节
没有编辑、插入、填充或查找替换,也不会写回原文件。需要打补丁时:把范围导出为 xxd 文本,在编辑器里修改,再贴回「粘贴 Hex」并下载 .bin——和 xxd 加 xxd -r 的流程一样。
粘贴文本有缺口就报错,不补零
每一行的偏移必须紧接上一行结束的位置。xxd -r 遇到缺口会用零填上;本工具在第一处缺口、重叠或无法识别的字符处停下并报出行号和列号,因为缺口通常意味着复制时漏了行。Intel HEX 固件记录会被识别出来,并给出专门的提示。
大小上限
文件最大 4 GiB。粘贴文本最多 16 MiB 字符,文本导出最多 1 MiB 选中字节;搜索找到 10,000 个结果后停止并明确提示。搜索模式最长 256 字节。
文本列和搜索不做的事
文本列固定为 ASCII,多字节的 UTF-8 字符在那里显示为点;检查器的 UTF-8 一行会解码光标处的字符。「忽略大小写」只折叠 A–Z。不支持通配符、按数值搜索、文件类型识别和结构解析。

十六进制查看器常见问题

二进制文件(.bin)怎么查看?

把 .bin 文件拖进上面的十六进制查看器即可,不需要安装任何软件。偏移列告诉你字节位置,Hex 列是字节本身,ASCII 列里能看到文件中夹带的可读字符串。

Linux 下怎么把 bin 文件用 16 进制打开?

命令行里用 xxd file.bin 或 hexdump -C file.bin。本工具的 xxd 和 hexdump -C 导出格式与这两个命令的输出逐字节一致,在浏览器里看完可以直接和终端结果对照。

怎么把 HEX 十六进制字符串转换成二进制文件?

切到「粘贴 Hex」,贴入连续的 Hex 字符串、带空格或冒号分隔的 Hex、C 数组,或者 xxd、hexdump -C 的输出,再点「下载整个文件(.bin)」,这就是常说的「HEX 转文件」。注意以冒号开头的 Intel HEX 固件格式不是 Hex dump,会给出专门提示。

32 位浮点数的小端字节怎么转换成大端?

点中这 4 个字节的第一个,检查器的 float32 一行就是按当前字节序读出的值;在选项里把字节序从小端切到大端,同一组字节会立刻按另一种顺序重新解读。

文件多大能打开?

最大 4 GiB。视图只读取屏幕上的几百个字节,所以大文件和小文件打开一样快;只有搜索需要把整个文件按 1 MiB 分块扫一遍,期间可以随时取消。

还有其他问题?

用十六进制查看器打开你的文件

先载入示例 PNG,看看文件签名、IHDR 块和检查器里大端读出的宽度,再用十六进制查看器打开你自己的文件。

所有处理都在浏览器本地完成。