VSCode需安装Microsoft官方Hex Editor扩展才能十六进制编辑,但默认不自动生效;须右键Open With或命令面板调用,且默认只读,需点击状态栏Readonly切换为Edit模式才可保存。

VSCode 自带不支持十六进制编辑,必须装扩展;装完也不能直接双击打开二进制文件——它会拒绝加载,得手动用命令调起。
安装 Hex Editor 扩展后打不开文件?
VSCode 官方 Hex Editor 扩展(Microsoft 出品)装完只是“就绪”,不是“自动生效”。二进制文件(比如 firmware.bin、logo.raw)默认仍被识别为“不可编辑文本”,直接双击会报错:Unable to open '<filename>': Text file encoding not supported.</filename>
- 右键文件 → 选择
Open With…→ 点击Hex Editor - 或用命令面板:
Ctrl+Shift+P(Win/Linux)/Cmd+Shift+P(Mac)→ 输入Hex Editor: Open as Hex→ 回车 - 别依赖文件关联:扩展不会自动把
.bin或.dat绑定到 Hex Editor,每次都要手动触发
为什么用 hexEditor.enablePreview 配置没反应?
这个设置项只控制“预览模式”是否启用(即在侧边栏临时打开 hex 视图),不是开关全局功能。很多人开了它,以为就能双击进 hex 模式,结果还是失败。
- 真正起作用的是
hexEditor.defaultView,设为"hex"可让所有支持的二进制文件默认以 hex 方式打开(但仍有例外) - 某些文件类型(如
.exe、.dll)会被 VSCode 内置安全策略拦截,即使配置了默认视图,也会 fallback 到“禁止打开”提示 - 如果想强制打开某类文件,需在
settings.json中加白名单:"hexEditor.supportedLanguages": ["*"](慎用,可能影响性能)
编辑时改了字节却保存失败?
Hex Editor 默认是只读模式,防止误操作损坏二进制结构。你看到的可编辑区域其实是“假编辑”——光标能点、Delete 能按,但 Ctrl+S 不生效,也不会弹出保存确认。
- 点击右下角状态栏的
Readonly标签,切换成Edit模式 - 切换后状态栏会显示
Hex Editor (Edit),此时修改并保存才真正写入磁盘 - 注意:编辑大文件(>10MB)时,VSCode 可能卡顿甚至崩溃;建议先用
xxd或hxd做粗粒度修改,再用 VSCode 查细节
Hex Editor 是个轻量查看工具,不是专业十六进制编辑器。它不支持搜索字节序列的正则、不提供结构化解析(比如 ELF header 自动高亮)、也不做内存映射式编辑。真要改固件头、patch 机器码,别卡在界面里反复试——先确认你要改的位置和原始值,再一锤定音。



















