My Program.cs
今天下午文件工作正常。我关闭了 Visual Studio (VS2013 Express) 并关闭了我的计算机。然后今天晚上我再次打开电脑Program.cs
现在看起来像这样:
f£óö'ûRÏ>•]|êêlÇPš—·õGÉ+s
qÖY®ÓÇNŽ9¯€8ï,? óQwÕ®Åy„Ùrsb^ ƒoÏEl?Qäº6z¹ Ü -³‡kwÎR®Q| €s᪠å²!dKË*:ÀyÉÿ?l
Ã&Š‚Ëð.Š›ï,²©“Óü@q:VªÐMãҟ岂¡ËÀÌ<öò§-ž‹66‚j$+”tVeÃÛSVÿ Ïr£pÉ'äûèk0Iœ¾Y/HÅ;vþ
DãjÊÕIÿóõ‘>¤¶ËLw¬,‚ÓHï’$t‡³Ywõ2ŽHíg3É·HVß{fÄèÄKõ™>§ïä ŽíC}r^— x èd’—X÷§º~qXPk#
etc.
关于如何恢复它有什么想法吗?我尝试运行 Recuva,但没有成功。此项目的“备份文件”文件夹中没有副本。
编辑:我已经确认每次退出 VS2013 然后重新打开任何项目时都会发生这种情况。我能够使用 dotPeek 通过反编译项目的 .EXE 来恢复文件。但是,该文件以需要进行大量编辑才能对其进行更多工作的格式进行反编译,例如,
xlApp=new Excel.Application()
becomes
Program.xlApp = (Application) Activator.CreateInstance(Marshal.GetTypeFromCLSID(new Guid("00024500-0000-0000-C000-000000000046")));
我需要一个比反复反编译更实用的长期解决方案。我将从源代码控制开始,但理想情况下我希望修复导致 VS2013 损坏文件的任何问题。
编辑:现在,同一项目和同一解决方案中的其他项目中的其他文件也发生这种情况。参考 EBrown 关于编码的评论,我检查了编码,受影响的文件位于“Unicode(带有签名的 UTF-8)-代码页 65001”中(未受影响的文件也是如此)。我可以使用恢复到最后提交的版本git checkout HEAD
,但是这个问题给我的工作带来了很大的不便。我希望找到除了重新安装VS2013之外的解决方案。