My code:
Keys = new Dictionary<string, string>();
Keys.Add("Набег_0", "raid_0");
当我得到Keys.ElementAt(0)
, 我有这个:{[Íàáåã_0, raid_0]}
。
当然,当我运行程序时,key = "Набег_0"
未定义并且程序崩溃System.Collections.Generic.KeyNotFoundException
当我使用 Windows 8.1 + Visual Studio 2013 + net 3.5 时,此代码运行良好
我该如何解决?
您以某种方式让 C# 编译器相信您的源代码是用代码页 1251 编写的,这是东欧和俄罗斯的默认系统代码页。这通常是由于文本文件缺少 utf-8 BOM 造成的。不清楚这是如何发生的,也许您使用文本编辑器而不是 Visual Studio 内置的编辑器创建了该文件。也许它被源代码控制破坏了,具有 Unix 背景的人往往会删除 BOM。
在 Visual Studio 中打开源文件并确保它仍然可以正确读取。然后使用“文件”>“另存为”,单击“保存”按钮上的箭头,选择“使用编码”并选择“Unicode(带签名的 UTF-8)”。
还要确保默认值仍然良好。文件 > 高级保存选项 > 如有必要,更改编码。如果您习惯使用其他文本编辑器,那么您需要对其进行配置,以便它保存带有 BOM 的文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)