无法复制可执行文件的内容? [英] Contents of executable files cannot be copied?
本文介绍了无法复制可执行文件的内容?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
推荐答案
,因为可执行文件和媒体文件是"二进制"文件。文本文件也是二进制的,但不同。所有文件都是二进制创建的,但有些文件的二进制创建程度高于其他文件。
您正在文本编辑器中打开一个二进制文件。这会立即更改字节的语义。主要问题是包含一个值的字节,如果它是文本文件(0x0A
和0x0D
),则该值恰好与换行符的值相对应,它将被呈现为与平台相关的换行符(例如,在Windows上)。复制时,您已将0x0A
或0x0D
更改为0x0D 0x0A
。
然后是控制字符或不可打印字符。并非0x00
和0xFF
之间的所有字节都可以表示为字符。它们将被省略或替换为可显示的字符。
因此,当您复制包含它们的文本时,它们将被省略或以其他方式损坏。
总结:您不能可靠地使用文本来显示所有可能的字节值,除非您选择对字节值进行编码,例如使用Base64编码。
如果要编辑二进制文件,请使用能够识别这些字节的编辑器:"十六进制编辑器"。请注意,更改二进制文件中的随机字节值并不能保证该文件的健全性:格式中可能内置了校验和,而您的编辑将使该校验和无效。
这篇关于无法复制可执行文件的内容?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文