Ale*_*kiy 5 .net c# string unicode string-formatting
我得到了string.Format非常奇怪的行为.我形成这样的信息:
protected override string GetMessageText(ManualEventFact reason)
{
var messageText = string.Format("????????? ?????? ??????? {0}(\"{1}\")",reason.EventTemplate.DisplayName, reason.Text);
return messageText;
}
Run Code Online (Sandbox Code Playgroud)
开头的字母是俄文.但是,在调用方法时,我得到了这个字符串:Äèñïåò÷åð çàêðûë ñîáûòèå ???????("??????? ?? ??????? ? ????? ?????? ??????????").这看起来像string.Format返回硬编码字的非unicode字符.我该如何处理这个问题?PS我也在我的应用程序的另一部分面临这个问题.
可能是源文件编码中的问题...如果您使用的是Visual Studio,请打开cs文件,然后转到File- > Save (your cs) As,然后在SaveButton 旁边,单击小箭头Save With Encoding,然后Encoding选择Unicode (UTF-8 with signature) - Codepage 65001.