⭐ 觉得好用?收藏备用,下次直接打开
🔬
拖拽任意文件到此处
自动识别 PNG · JPEG · GIF · PDF · ZIP · GZIP · WebP · MP4 · BMP · WAV · SQLite · Parquet
🔒 文件仅在浏览器本地解析,不上传任何服务器(断网可用)。建议 ≤ 50 MB 体验最佳。

Hex 二进制查看器 把任意文件拖进浏览器,立刻看到「偏移 / 十六进制 / ASCII」三栏视图,自动从前几个字节识别文件类型(魔数),并对常见格式(PNG / JPEG / GIF / PDF / ZIP / GZIP / WebP / MP4 / BMP / WAV)解析出结构树——点结构节点就在 hex 视图里高亮对应字节范围。整个工具纯前端运行,文件不出本地浏览器

为什么需要这个工具

「这是什么文件」「PNG 里这段 tEXt 写了啥」「ZIP 中央目录在哪」——这些问题在没有专门桌面工具的机器上很麻烦:装 010 Editor / HxD 要授权和安装包,跑 xxd | less 又看不到结构,写脚本解析格式更是大炮打蚊子。本工具就是一个「打开浏览器即用」的最小闭环:拖进文件 → 看魔数 → 看结构 → 找字节,三件事都在一屏内完成。

三栏视图的含义

  • 偏移列:8 位大写十六进制,每行 16 字节,方便和 0x1A2B 这样的地址对照
  • HEX 列:每字节两位大写十六进制,第 8、9 字节之间留空,便于眼测对齐
  • ASCII 列:可打印字符(0x20–0x7E)原样显示,不可打印字符用 · 占位,整列与 HEX 列同步高亮

点击左侧结构树的任意节点,hex 视图会自动滚动到对应位置并把范围内的字节标成紫底白字,配合右侧详情面板的「字段名 → 值」键值对(如 PNG IHDR 的「尺寸 / 位深度 / 颜色类型」、ZIP 中央目录条目的「文件名 / 压缩方式 / 大小」),快速建立「字节流 ↔ 语义」的对应。

解析覆盖范围

格式结构解析关键字段
PNG✓ chunk 列表IHDR 尺寸/位深度/颜色类型/交错;tEXt 关键字+文本;pHYs DPI;gAMA
JPEG✓ 段表SOFx 尺寸/通道;APP0 JFIF 版本;APP1 EXIF/XMP 标识;COM 注释;SOS 扫描数据范围
GIF✓ LSD + 帧屏幕尺寸;全局色表;每帧位置/尺寸/局部色表;扩展块(GCE/Comment/Application)
PDF△ header + xref版本号;startxref 偏移;%%EOF;前若干 <n> <m> obj 头(不展开 stream)
ZIP✓ 中央目录EOCD;条目数;每条文件名/压缩方式/原始大小/压缩后大小/本地头偏移
GZIP✓ header + trailer压缩方法;MTIME;原始文件名;CRC32;ISIZE
BMP文件大小;DIB 头尺寸/位深度;像素数据起点
WebP / WAV / AVI✓ RIFF chunksWebP VP8/VP8L/VP8X 尺寸;WAV 采样率/位深度/通道;其它 chunk 大小列表
MP4 / HEIF✓ ISOBMFF box 树ftyp major brand;moov/trak/mdia 容器展开 4 层
PE (EXE/DLL)DOS 头;PE 偏移;机器类型 (i386/AMD64/ARM64)

不在表里的格式(7Z / RAR / ELF / Mach-O / FLAC / SQLite / Parquet 等)只识别魔数,不展开结构——但 hex 视图依然完全可用。

隐私

文件用 File.arrayBuffer() 读到 Uint8Array就地在浏览器内存里解析没有任何网络请求。如果你打开的是私钥、证书、固件镜像、生产数据库快照,它们不会离开你的浏览器。本工具的代码是开源静态资源,可以把整页 HTML/JS 离线保存后断网使用。

📍使用场景

  • 想知道这个文件到底是什么没扩展名的二进制 dump、被改过后缀的文件、撞了一个奇怪的字节流——拖进来直接看魔数(前 8 字节)认格式,不信任扩展名。
  • 看 PNG / JPEG / PDF 的内部结构学习文件格式或排查损坏:PNG chunk 列表(IHDR/IDAT/tEXt/IEND)、JPEG 段(SOI/APPn/SOFx/SOS/EOI)、PDF 对象索引——左侧点节点,hex 视图同步高亮对应字节。
  • 检查 ZIP / GZIP 是否正常看中央目录条目数、压缩方式、文件名编码;GZIP 看末尾 8 字节的 CRC32 与 ISIZE 是否对得上原始大小。
  • 在大文件里搜字节序列找某个魔数(如 `89 50 4E 47` PNG)、某段 ASCII(如 `%PDF`)、定位嵌入的副文件;按偏移跳转 + 上一个/下一个查找,不需要写脚本。
  • EXIF / 元数据初探看 JPEG 的 APP1 段是否包含 EXIF / XMP,PNG 的 tEXt / pHYs 元数据;判断该不该再上 EXIF 清理工具。

常见问题

文件多大能跑?

建议 ≤ 50 MB 体验最佳,硬上限 200 MB。整个文件会被读进 Uint8Array 内存里渲染,浏览器 tab 内存通常在 2 GB 左右,但 hex 视图本身用了虚拟滚动,行数多不会卡——卡的是搜索(朴素全扫)和初次加载(File→ArrayBuffer)。超大文件建议先用 dd 切片再看局部。

支持解析哪些格式?

结构化解析:PNG(chunk 列表 + IHDR 尺寸/位深度/颜色类型)、JPEG(段表 + SOFx 尺寸 + APP1 EXIF/XMP 标识)、GIF(LSD + 帧列表)、PDF(header + xref + 前若干对象)、ZIP(中央目录条目 + 压缩方式 + 大小)、GZIP(header + trailer CRC/ISIZE)、BMP、WebP / WAV / AVI(RIFF)、MP4 / HEIF(ISOBMFF box 树)、PE(MZ + COFF)。仅识别格式:7Z、RAR、TAR、ELF、Mach-O、FLAC、MP3、OGG、SQLite、Parquet、WOFF/TTF/OTF、BZIP2、ZSTD。其它格式只展示 hex,不展示结构树。

为什么 PDF 只看到前几个对象?

PDF 是「按字节流追加 + xref 索引」的格式,完整解析需要按 xref 偏移逐个读取间接对象、解码 stream(FlateDecode / LZW / ASCII85),还得处理增量更新。这套要么上 pdf.js(>1MB 包体)、要么自己写一个完整解析器,对「看结构」目标过重。本工具的策略是:header / startxref / %%EOF 精确解析,对象索引只扫前 2MB 估个数 + 列出前 20 个 <n> <m> obj,足够回答"是不是有效 PDF / 大概多少对象 / 第一个对象在哪",要看 stream 内容请用 PDF 提取文字 / PDF 页面编辑工具。

文件会上传吗?

不会。 整个工具是纯静态页面,文件用 File.arrayBuffer() 读到内存里就地解析,没有任何 fetch/XHR。首次加载完成后断网也能继续用。如果你打开的是私钥、证书、内部固件,可以放心拖——它们不会离开你的浏览器。

「跳转」和「搜索」怎么用?

跳转输入框接受三种格式:0x1A(十六进制)、26(十进制)、纯字母数字含字母的也按十六进制(如 1AF);按 Enter 跳过去并高亮该字节。搜索有两种模式:ASCII 输入文本(如 %PDF),HEX 输入十六进制字节(如 89 50 4E 4789504E47,空格/逗号自动忽略);找到后按 ▶ 找下一个,按 ◀ 找上一个,未找到时显示「未找到」。

结构树里圆点的颜色是什么意思?

绿色:签名 / Header / Trailer(魔数、文件结束标记)。紫色:关键 chunk(PNG 的 IHDR/IDAT/IEND、JPEG 的 SOFx/SOS、PDF 对象、ZIP 中央目录条目)。橙色:辅助/可选 chunk(PNG 小写开头的 tEXt/pHYs/gAMA、JPEG 的 APPn 应用段)。灰色:原始数据块(像素数据、压缩流)。红色:解析时遇到的非法/截断字节。点击节点会在 hex 视图里高亮对应字节范围。

和 010 Editor / HxD / xxd 比怎么样?

本工具不是替代品,是「在线快速查看」的补充:装机器、装客户的 Mac/Windows/Linux 都能用,URL 一发就能看,不用解释怎么装 010 Editor 模板(.bt 文件)。但不能编辑、不能写回、不能跑脚本——要批量处理或写自定义模板请用 010 Editor / Kaitai Struct。日常 80% 的「这文件是啥 / 看下结构 / 找一段字节」用本工具就够。