我一直在使用名为Mnemosyne的闪存卡程序,该程序使用python脚本。不久之前,我的计算机冻结后我的闪存卡数据库无法访问,我不得不手动关闭它。每当我尝试加载包含我的卡的数据库时,我都会收到此错误。
Invalid file format Traceback(innermost last): File "mnemosyne\core\mnemosyne_core.pyc", line 1012, in load_database BadPickleGet: 577"
非常感谢帮助。
答案 0 :(得分:1)
(虽然CLayton的副本可能是二元发行版,但mnemosyne的来源是免费提供的。)
虽然没有多大帮助:第1012行只是:
db = cPickle.load(infile)
其中'infile'是存储的数据库文件。所以你的数据库文件中有一些损坏的东西。 (BadPickleGet是UnpicklingError的特定子类,这是输入中断时的预期。)
您可以更改mnemosyne_core.py以使用普通的Python pickle模块而不是cPickle,允许您向pickle.py添加调试并确切地计算出它不喜欢的文件中的内容。但说实话,如果文件由于硬件故障/硬断电而损坏,则内容可能被截断,不可读或只是完全垃圾。
准备重新审视那些早期的卡片......