提问人:Uwe_98 提问时间:3/12/2020 最后编辑:Uwe_98 更新时间:12/13/2022 访问量:207969
使用Notepad++作为十六进制编辑器
Use Notepad++ as HEX-Editor
问:
我在 Windows 10 上使用 Notepad++ 7.8.5 64 位版本。我想将它用作十六进制编辑器。
我打开了一个二进制文件,但记事本将其显示为带有奇怪字符的文本。为了可视化十六进制数字,我选择了文本的一部分,然后点击语音
Plugins/Converter/ASCII-->HEX
它向我显示了所选零件的十六进制数。现在我想以十六进制查看整个文件,但它不起作用。似乎选择某些部分它可以工作,而选择其他部分则不起作用。
我需要以 HEX 格式转换或可视化整个文件。
我也试过:
Plugins/Plugins Admin…
但是十六进制编辑器不存在。
谢谢 4 帮助
答:
编辑:
请注意 - 同时安装已针对 64 位进行了调整。
- 请从下载部分更新到 Notepad++ 8.4.7(64 位)
- 转到菜单插件 > 插件管理员
- 在搜索字段中输入十六进制。
- 选择 Hex-Editor 并按 ìnstall。
在我看来,您尝试安装十六进制编辑器,但最终使用了错误的工具(插件)(ASCII -> HEX),如您上面的问题所述。Converter
HexEditor 的安装过程有些混乱,因为它目前仅适用于 32 位版本。Plugins Admin
一个简单的解决方案是在 U 盘上安装 Notepad++ x32 版本(例如使用 PortableApps)。
但是,感谢 Peter Jones,这里是 x64 版本的下载链接。 和实际执行手动安装的说明:
- 解压缩相应的下载的 zipfile 并打开包含该文件夹(或在 Windows 资源管理器中打开该 zipfile)
- 在 Notepad++ 中,使用“插件”>“打开插件文件夹”。
- 在新打开的 plugins 文件夹中,添加一个子文件夹 HexEditor。
- 将 zipfile 复制到 HexEditor 子文件夹中...所以它应该在
HexEditor.dll
...\notepad++\plugins\HexEditor\HexEditor.dll
- 关闭Notepad ++的所有打开的窗口。
- 再次重新启动 Notepad ++。
- HexEditor 应该在插件菜单中可用,并且 HexEditor.dll 应该列在 ?> 调试信息插件列表。
在 Windows 10 上通过 Notepad++ 版本 7.8.5 64 位成功测试。有关更多信息,请参阅上面的链接。请注意 UAC 问题,即以管理员身份运行 Notepad++。
评论
help-info.de 的答案正在起作用。
但是,如果您处于需要复制粘贴插件提供的十六进制输出结果的上下文中,那就不是那么好了。
例如,假设NPP_HexEdit窗口显示以下字节:
00 06 12 0b
如果您从左到右选择,复制然后粘贴(在新的文本文件中),您将获得:
20 06 12 0b
出于某种原因,“0x00”被转换为 UTF-8 “20”,并且由于“0x20”也被转换为 UTF-8 “20”,因此您不能在这里真正使用复制 + 粘贴功能。
如果您从右到左选择,复制然后粘贴(在新的文本文件中),您将获得:
12 01 0e 0d
我什至不会尝试转换这个,显然无法使用......
解决方案 (Windows)
在选择并安装 NppExec 中,重新启动 npp。
Plugins > Plugins Admin
选择并输入以下内容:
Plugins > NppExec > Npp Execute...
SET local OUTFILE = "$(FULL_CURRENT_PATH).hex.txt" cmd /c <XXD_DIRECTORY>\xxd.exe -p $(FULL_CURRENT_PATH) >$(OUTFILE) NPP_OPEN $(OUTFILE)
在同一窗口中保存脚本,例如 .
bin_to_hex
从中选择脚本并添加它,然后按确定并重新启动 npp。
Plugins > NppExec > Advanced Options
Associated script:
Add/Modify
在 npp 中,打开 bin 文件。
选择,你就完成了!,应该在新选项卡中将您的垃圾箱作为十六进制。
Plugins > NppExec > bin_to_hex
xxd.exe 可以从多个位置恢复,例如:
- C:\Program 文件 (x86)\Vim\vim74
- (我在我这边用了这个,来自 Cmder)C:\Cmder\vendor\git-for-windows\usr\bin
编辑您可以使用以下 powershell 方法(格式更好,但执行时间更长),而不是使用 xxd.exe。将脚本替换为:
SET local OUTFILE = "$(FULL_CURRENT_PATH).hex.txt"
cmd /c powershell -command "format-hex $(FULL_CURRENT_PATH) > $(OUTFILE);exit"
NPP_OPEN $(OUTFILE)
评论