VSCode需安装Microsoft官方Hex Editor扩展(作者Microsoft Corporation、蓝色六边形图标)才能查看编辑二进制文件;安装后须重载窗口,手动右键“Open with Hex Editor”或用Cmd+Shift+P执行“Hex Editor: Reopen as Hex”触发,编辑前必须点击状态栏Readonly切换为Edit模式并Ctrl+S保存,且务必提前备份。

VSCode 本身不解析二进制文件,装完 Hex Editor 扩展也不会自动生效——你看到的乱码或报错,不是文件坏了,是 VSCode 还在用 UTF-8 强行解码原始字节。
怎么确认装的是 Microsoft 官方 Hex Editor
扩展市场搜 Hex Editor 会出现多个同名插件,只有作者栏明确写着 Microsoft Corporation 的那个才支持编辑+保存。其他叫 Hex Viewer、Binary Preview 的基本只读,点了 Ctrl+S 也不写盘。
- 安装后必须点右下角弹出的 Reload Window,否则命令面板里搜不到
Hex Editor: Reopen as Hex - 按
Ctrl+Shift+P输入Extensions: Show Built-in Extensions,搜Hex Editor,状态必须是 Enabled(不是 Disabled) - 图标是蓝色六边形,不是绿色方块或带 “Viewer” 字样的变体
右键没 “Open with Hex Editor” 怎么办
VSCode 默认不为 .bin、.img、.elf 等后缀注册右键菜单项,尤其当文件之前被双击打开过(哪怕报错后点了“打开”),就会缓存为文本模式,右键菜单直接消失。
- 先普通方式打开文件 → 按
Ctrl+Shift+P输入Hex Editor: Reopen as Hex(注意不是Open File) - 如果文件还没打开,用
Hex Editor: Open File,它会跳出系统文件选择器 - 拖拽文件到编辑区?VSCode 可能仍走文本流程;一旦弹出“无法打开”,点提示里的
Open with下拉菜单,再选Hex Editor
编辑前必须关掉只读模式,否则改了也白改
状态栏右下角显示 Readonly 不是提示,是硬锁:双击字节、粘贴、键盘输入全无效。点了 Ctrl+S 也不报错,只是静默忽略。
- 点击状态栏的
Readonly标签,切换成Hex Editor (Edit) - 双击字节 → 输入两位十六进制(如
AB、00)→Ctrl+S才真正写入磁盘 - 别点右下角的
Save with Encoding(比如选 UTF-8),那是文本重编码逻辑,一存就废文件 - 文件权限是只读(比如固件在
/usr/lib/firmware)?VSCode 不提示,但保存静默失败;先chmod +w或复制到用户目录再改
大文件卡顿、打不开或改错字节就失效
默认内存限制 50MB,超了会报 File is too large to open in the hex editor;而游戏存档或固件镜像常带 CRC 校验,改一个字节可能让整个文件被拒绝加载。
- 调大限制:设置里搜
hex editor memory limit,改值(如200),然后 重启 VSCode 生效 - 大于 10MB 的文件,先用命令行定位:
xxd -l 512 filename.bin | grep -A5 -B5 "MAGIC",确认偏移和原始值再进 VSCode 编辑 - 编辑前务必
cp firmware.bin firmware.bin.bak—— Hex Editor 没跨会话撤销,关了窗口就回不去 - 改完记得校验:
certutil -hashfile yourfile.bin SHA256(Windows)或shasum -a 256 yourfile.bin(macOS/Linux),比对哈希是否变化异常
真正难的不是找到偏移位置,而是确认那个字段是否对齐、是否受校验保护、是否被运行中的进程锁定——Hex Editor 不帮你算 CRC,也不提醒你文件正被 Steam Overlay 持有句柄。


















