如何把本地可执行文件和TXT文本互转

这个程序实现起来比较简单,有一点要注意,这个想法只适合比较小的可执行文件:

下面是bin2hexText.py的源码:

#!/usr/bin/python  
#encoding: utf-8
import binascii 
import sys

if __name__ == "__main__":
	if len(sys.argv) != 3:
		print "Example: python ", sys.argv[0] , "in.exe", "out.txt"
		sys.exit(1)

	bin_name = sys.argv[1]
	txt_name = sys.argv[2]
	fh = open(bin_name, 'rb')
	fout = open(txt_name,'w')
	info = fh.read()
	hexstr = binascii.b2a_hex(info)
	fout.write(hexstr)

下面是hexText2bin.py的源码:

#!/usr/bin/python  
#encoding: utf-8
import binascii 
import sys

		
if __name__ == "__main__":
	if len(sys.argv) != 3:
		print "Example: python ", sys.argv[0] , "in.txt", "out.exe"
		sys.exit(1)

	txt_name = sys.argv[1]
	bin_name = sys.argv[2]
	fh = open(txt_name, 'r')
	fout = open(bin_name,'wb')
	info = fh.read()
	asciistr = binascii.a2b_hex(info)
	fout.write(asciistr)

把可执行文件转成文本使用:python bin2hexText.py 1.exe hello.exe.txt

把文本转成可执行文件使用:python hexText2bin.py hello.exe.txt my.exe



转换后的文件内容如:

4d5a90000300000004000000ffff0000b800000000000000400000000000000000000000000000000000000000000000000000072745f78745f656e645f5f005f5f6c696236345f6c69626d73766372745f615f696e616d65005f5f73656375726974795f636f6f6b696500


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值