我的程序在windows上工作正常,有cpickle,我使用的是二进制模式,比如’wb’或’rb’.当我在Linux上运行我的程序时,它仍然可以正常工作.
但是当我试图在我的Windows平台上取消从Linux平台获得的文件时,我得到了这条有线消息:cPickle.UnpicklingError:无效的加载密钥’
”.
谁能告诉我为什么?
似乎我无法从Linux平台上取消任何文件.
顺便说一句,我运行的两个程序是相同的.
太感谢了.
最佳答案
查看代码(http://svn.python.org/view/python/trunk/Modules/cPickle.c?revision=81029&view=markup),看起来它是一个解析错误(加载密钥是一个pickle格式密钥).听起来这个文件已经改变了.
如何将文件从Linux传输到Windows?如果是FTP,你是否以二进制模式传输?
(你正在使用HIGHEST_PROTOCOL吗?)