【问题标题】:check if Uppercase function will work [duplicate]检查大写函数是否可以工作[重复]
【发布时间】: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


【解决方案1】:

一切都是正确的,除了你的文字。控制台只能打印 ASCII 字符。 您可以使用的所有字符表:http://www.asciitable.com/index/asciifull.gif 这是因为控制台使用的字体。 如果您将不兼容的字体更改为兼容的,它将起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-15
    • 2012-10-14
    • 1970-01-01
    • 2020-12-05
    • 1970-01-01
    相关资源
    最近更新 更多