sublime text 本身不支持十六进制查看,需安装 facelessuser 版本 hexviewer 插件实现只读查看;必须通过命令面板执行 hexviewer: view in hex 手动选文件,双击或 file → open 会因 utf-8 解码失败而显示空白或乱码。

Sublime Text 本身不支持十六进制查看,必须安装 HexViewer 插件,且只能用于只读查看——它不是编辑器,改了 hex 再保存会把字符串当文本存,原始字节结构必然损坏。
怎么确认 Package Control 已就绪
没装 Package Control,后续所有操作都无效。按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 Package Control: Install Package;如果没这个命令,说明还没装。去 https://www.php.cn/link/befa130dcb31961fa251d61e1e6ba0e1 复制安装代码,粘贴进 View → Show Console 运行即可。
安装后不用重启,但建议立刻试一次:Ctrl+Shift+P → 输入 Package Control: Install Package → 看是否响应。
安装 HexViewer 的关键动作和常见失败点
必须认准作者是 facelessuser 的 GitHub 仓库 HexViewer(驼峰拼写、无空格、无下划线)。其他名字近似的插件(如 HexEditor、hexviewer、HexView)基本不能用。
- 按
Ctrl+Shift+P→ 输入Package Control: Install Package→ 回车 → 等几秒等包列表完全加载,再搜HexViewer - 安装完立刻执行
Package Control: Satisfy Dependencies,否则依赖缺失会导致插件静默失效(不报错、不显示命令) - 验证是否成功:再按
Ctrl+Shift+P,输入HexViewer,必须看到带冒号的完整命令,例如HexViewer: View in Hex或HexViewer: Toggle Hex Mode - 若仍不出现,运行
Package Control: Reload Package强制重载插件环境
为什么双击 .bin/.exe 打不开,以及正确打开流程
Sublime 默认拒绝加载含 \x00、\xff 等非法 UTF-8 字节的文件,双击只会显示空白页、弹出 Error loading file: invalid start byte,或直接静默失败——这不是文件问题,是编辑器底层策略。
- 正确路径:先按
Ctrl+N新建空白页 →Ctrl+Shift+P→ 输入并执行HexViewer: View in Hex→ 在系统对话框中手动选中你的firmware.bin或test.elf - 不要用
File → Open直接打开二进制文件,那只是强行以文本方式解码,结果是乱码或截断 - 如果当前已打开一个文本文件(比如
log.txt),插件可能跳过解析逻辑;可临时把目标文件重命名为test.bin再试,绕过 Sublime 对扩展名的文本白名单限制 -
HexViewer: Toggle Hex Mode仅适用于已被 Sublime 成功加载为文本的文件,对原始二进制文件基本无效
大文件加载失败或卡死,怎么调
HexViewer 默认限制文件大小(约 10MB),超过即放弃解析,且不提示错误。这不是 bug,是防止 UI 卡死的保护机制。
可在 Preferences → Package Settings → HexViewer → Settings 中修改:
{
"max_file_size": 52428800
}
单位是字节,上面例子设为 50MB。但注意:即使调大,Sublime 的文本渲染架构仍不擅长处理超大二进制数据,卡顿或内存溢出风险仍在。真正要分析百 MB 级固件或镜像,应换用 HxD(Windows)、Bless(Linux)或 010 Editor。
最易被忽略的一点:你在 hex 视图里看到的 48656C6C6F 是 ASCII 字符串,不是原始字节;右下角状态栏明确写着 Hex Viewer (read-only) —— 没有 “Save as Binary”、“Apply to Original” 这类按钮,也没法有。











