我构建了一个Python steganographer,它在图像中隐藏UTF-8
文本,并且对它工作得很好。我想知道我是否可以将完整的文件编码成图像。为此,程序需要读取各种文件。问题是并不是所有的文件都是用UTF-8
编码的,因此,您必须用以下方式读取它们:
file = open('somefile.docx', encoding='utf-8', errors='surrogateescape')
如果你把它复制到一个新的文件中,然后读到它们,它就会说这些文件是不可解密的。我需要一种方法来读各种各样的文件,然后再写它们,这样它们仍然可以工作。在Python3中,您有方法做到这一点吗?在
谢谢。在
改变你的看法。您不需要“在图像中隐藏UTF-8文本”。在图像中隐藏字节。在
这些字节可能完全意外地被解释为UTF-8编码的文本。但在现实中他们什么都可能。在
使用
open("...", encoding="...")
将文件作为文本读取有一个隐藏步骤,即将文件的字节解码为字符串。当您希望在程序中将文件内容视为字符串时,这很方便。在跳过隐藏的解码步骤,以字节形式读取文件:
open("...", "rb")
。在相关问题 更多 >
编程相关推荐