2016-05-16 82 views
2

如何檢測ToUpper()函數是否可能在此字符串上? 例如,當輸入的語言不具有大寫字母時。 我有這樣的:檢查大寫功能是否有效

String text = "لان يقوم غينيا انتصا"; 

Console.WriteLine(text.ToUpper(CultureInfo.CurrentUICulture)); 

,輸出是:"???? ????? ????"

我想這Console.WriteLine(text.ToUpper(new CultureInfo("ar")));但結果是一樣的前面。

+1

'Console.WriteLine(文本)'打印字符?我認爲ToUpper忽略了未映射的字符。換句話說,也許你的控制檯窗口沒有字體或區域設置來正確顯示該字符串 – payo

+1

這不是導致問題的'ToUpper()'。 [看到這裏的更多信息](http://stackoverflow.com/questions/21751827/displaying-arabic-characters-in-c-sharp-console-application) –

+0

當我在LinqPad中運行它,它按預期工作。 –

回答

0

一切都是正確的,exept爲您的文本。控制檯只能打印ASCII字符。 可以使用的所有字符的表格:http://www.asciitable.com/index/asciifull.gif 這是因爲控制檯使用的字體。 如果您將不兼容字體更改爲兼容字體,則它將起作用。

+0

我糾正了它。 – 2016-05-16 20:40:08