Sublime Text 无法直接编辑十六进制文件,因其本质是文本编辑器,依赖字符编码解析文件,不支持二进制安全读写;仅能通过HexViewer插件只读查看,真正编辑需借助HxD、xxd等专业工具完成。

Sublime Text 本身不支持直接编辑十六进制文件,它定位是文本编辑器,读取文件依赖字符编码(如 UTF-8),对二进制数据无法安全解析或写入。所以不能真正“编辑”十六进制内容并保存回原始二进制格式——这是关键前提。但你可以用插件查看,再配合外部工具完成编辑闭环。
用 HexViewer 查看十六进制内容(只读)
这是最常用、最轻量的方案,适合快速 inspect 二进制文件(比如 .exe、.jpg、.bin):
- 先确保已安装 Package Control(没装的话按 Ctrl+Shift+P → 输入 “Install Package Control”,回车并重启)
- Ctrl+Shift+P → 输入 “Install Package” → 回车 → 搜索 “HexViewer” → 安装
- 打开一个二进制文件(或任意文件)→ 再次 Ctrl+Shift+P → 输入 “HexViewer: Show Hex” → 回车
- 新标签页会显示:左侧地址偏移、中间十六进制字节(每行默认 16 字节)、右侧 ASCII 可视字符(不可见字符显示为点)
- 支持复制整段 Hex、选中部分 Hex、调整每行字节数(通过 HexViewer 设置)
为什么不能在 Sublime 里直接编辑 Hex 并保存?
因为 HexViewer 输出的是“字符串形式的十六进制表示”,不是原始字节流。你在里面改了 "48656C6C6F",Sublime 会把它当文本保存成这串字符,而不是写入 5 个字节 0x48 0x65 0x6C 0x6C 0x6F。强行保存会导致文件损坏。
- HexViewer 是只读模式,界面右下角会显示 “Hex Viewer (read-only)”
- 没有 “Save as Binary” 或 “Apply to Original File” 功能
- 它的作用是辅助分析,不是替代专业 Hex 编辑器
真正需要编辑时,推荐这些组合方式
如果你必须修改二进制内容,建议以下可靠路径:
- 用 HxD(Windows)/ Bless(Linux)/ 010 Editor(跨平台)打开原文件直接编辑:它们能实时映射字节、支持搜索/替换 Hex、计算校验和、结构模板解析,安全可靠
-
命令行 + Sublime 协作:用
xxd -g1 file.bin > file.hex转成可读 Hex 文本 → 在 Sublime 里编辑 → 保存后运行xxd -r -g1 file.hex > file_new.bin还原 - 把 HexViewer 导出内容粘贴到 Sublime 做标注:比如在某段 Hex 下方加注释说明用途,再对照专业工具修改
其他相关插件补充(非 Hex 编辑,但有用)
有些插件能间接提升二进制工作流效率:
- PackageResourceViewer:查看已安装插件的 Python 源码,适合调试 HexViewer 行为或自定义快捷键
-
ConvertToUTF 或内置 Python 控制台:
view.run_command("show_panel", {"panel": "console"})→ 输入",".join(f"{b:02X}" for b in b"hello")快速查字符 Hex 值 - AutoFileName:在写路径或资源引用时避免拼错二进制文件名
基本上就这些。Sublime 查十六进制不难,编辑得交给专业工具——不是功能缺陷,而是定位使然。用对场景,它依然是你二进制分析工作流里高效的一环。










