2010-01-30 42 views
-1

说我加密.doc(或任何其他类型)文件,我稍后解密它。然而,我无法打开它,因为在解密过程中,[null] s和[DC1]以及其他突出显示的字符不会被放回到文件中,因为它们不是ASCII字符的一部分。他们如何编写其他压缩/加密/编辑/等程序?如何在编辑后正确编写文件

IM在Python这样做,那么通常情况下,不进行编辑,我可以这样做:

file1 = open(file,'rb').read() 
file2 = open(new_file,'wb') 
file2.write(file1) 

但这并不工作,如果我加密和

+0

您的代码中存在一个错误。 – 2010-01-31 00:06:16

回答

1

什么加密您使用的解密?
适当的加密也将加密非ASCII字符,使他们能够正确解密后

4

空值和DC1的等等都是ASCII字符集的绝对一部分,所以我不知道你在说什么。因此,例如,考虑...:

>>> import pyDes 
>>> f = open('afile', 'w') 
>>> f.write('Nel mezzo del cammin di nostra vita\n') 
>>> f.close() 
>>> data = open('afile').read() 
>>> encrypted = pyDes.des('mysecret').encrypt(data, padmode=pyDes.PAD_PKCS5) 
>>> f = open('encryp', 'wb') 
>>> f.write(encrypted) 
>>> f.close() 
>>> encdata = open('encryp', 'rb').read() 
>>> decrypted = pyDes.des('mysecret').decrypt(encdata) 
>>> decrypted 
'Nel mezzo del cammin di nostra vita\n\x04\x04\x04\x04' 

无论加密你使用(pyDes或其他)均不在本正是那种你自称的事情是不工作...?!

如果您希望获得诊断代码中错误的帮助,那么您最好发布错误代码,而不是通用描述,只是没有提供足够的信息来理解错误。

+0

我想他没有发布加密代码,因为他只是写了它 - 所以它不能有错误...因此它必须是文件写入! – 2010-01-30 22:02:44