【发布时间】:2016-05-16 19:48:00
【问题描述】:
我怎样才能检测到 ToUpper() 函数在这个字符串上是可能的? 例如,当输入语言没有大写时。 我有这个:
String text = "لان يقوم غينيا انتصا";
Console.WriteLine(text.ToUpper(CultureInfo.CurrentUICulture));
输出为:"???? ????? ????"
我试过这个Console.WriteLine(text.ToUpper(new CultureInfo("ar")));,但结果和以前一样。
【问题讨论】:
-
Console.WriteLine(text)是否打印字符?我认为 ToUpper 忽略了未映射的字符。换句话说,也许您的控制台窗口没有正确显示该字符串的字体或语言环境 -
导致问题的不是
ToUpper()。 See here for more info. -
当我在 LinqPad 中运行它时,它按预期工作。
-
@CamBruce 在控制台应用程序中尝试;它不会工作。
-
我在 dotnetfiddle.net 上试过,它可以工作 :)
标签: c# string cultureinfo uppercase culture