我需要一个 GUI 应用程序,使用二进制数字(而不是十六进制数字)显示文本的二进制表示。有什么建议吗?
例如,程序应该将文本转换Hi
为1001000 1101001
。
与命令行实用程序相比,我更喜欢图形应用程序。
答案1
你可以尝试ppt
从bsdgames
包中获取。它将输出 ASCII 作为二进制穿孔卡。
你也可以使用 Python 脚本:
$ python -c 'for char in "Hello, world!": print(bin(ord(char)))'
0b1001000
0b1100101
0b1101100
0b1101100
0b1101111
0b101100
0b100000
0b1110111
0b1101111
0b1110010
0b1101100
0b1100100
0b100001
答案2
经过进一步考虑并删除我的第一个答案后,我现在注意到您不想以二进制形式(例如使用strings
实用程序)查看可读文本,而是以二进制形式查看文本。
所以,我认为 KDE 实用程序奥克特塔正是你想要的,它在存储库中可用,可以安装
sudo apt-get install okteta
它允许您以二进制形式查看文本文件(见下面的第二张屏幕截图),您可以单击页面底部的选项卡在二进制、十六进制、十进制和八进制之间切换。您甚至可以创建一个新文件并开始输入文本,如果您选择了二进制模式,则输入的字符将以二进制显示,就像在线转换器您链接到的。下面的屏幕截图显示了一个示例:
这个应用程序完全按照您在问题中所指定的功能进行操作,而且它也是一个 GUI,因此似乎满足了所有要求。
Okteta
似乎是功能最齐全的编辑器,并且还有提供附加功能的模块和插件。
答案3
我想知道是否od
有选项以二进制输出(而不是十六进制od -t x1z
)。不幸的是没有,但可以xxd
在以下位置找到一个不错的替代方案:上层与下层:
echo 'Hello, world!' | xxd -b
0000000: 01001000 01100101 01101100 01101100 01101111 00101100 Hello,
0000006: 00100000 01110111 01101111 01110010 01101100 01100100 world
000000c: 00100001 00001010 !.