请问怎么样在linux系统下将二进制文件转换为文本文件

请问怎么样在linux系统下将二进制文件转换为文本文件,第1张

如果楼主是问Dos 和 Unix文本格式互相转化,那就是unix2dos, dos2unix两个命令。Unix文件是不区分二进制和文本格式的,不存在什么“二进制和文本互相转化”问题。对文件的处理,完全在于应用程序怎么去处理它。例如,编译出来的a.out是ELF格式的二进制文件,用shell就是直接加载并运行该程序,但是如果用file a.out,则是从a.out中提取信息来判断a.out文件格式。如果是在编程中,那更不用区分,FILE *fp = fopen(yourfilename, "r")和fopen(yourfilename, "rb")是完全一样的。​

在线转换器http://www.ab126.com/goju/1711.html

hexdump命令,可以将文件(不光是二进制文件)按各种格式显示,当然包括ASCII。

你可以用这个命令再配合‘>’输入到文件里,就起到转换的效果了。

1、在Fedora桌面打开“Applications”-“System Tools”-“Terminal”打开命令终端,为vi编辑做准备。

2、在终端切换到要编辑的二进制文件目录,然后输入“vi -b test.bin”,其中“test.bin”是我要编辑的二进制文件。当然也可以直接指定vi要打开编辑的文件路径。“-b”参数,就是告诉vi编辑器,我是在用二进制模式打开文件的。

3、打开文件之后,我们是很难看到文件实际内容的,因为是二进制的,文件不是可读的,因此也不能直接编辑和修改的。这时,我们可以使用命令“:%xxd”强制将其转化为可读的十六进制显示,就可以使用正常的vi命令对文件进行编辑了。

4、转化之后的文件内容以十六进制表示,左侧是文件偏移值。我们计划将文件编译00000010开始的4个十六进制字符“FFFFFFFF”修改一下。

5、使用正常的vi编辑器命令将十六进制字符“FFFFFFFF”修改为“88888888”,修改完成后,使用esc命令返回到vi的命令模式,然后使用命令“:%xxd -r”就可以将其重新转化为二进制模式了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8738705.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存