Rom*_*asz 2 c# windows globalization windows-phone windows-phone-8.1
这可能是一个简单的问题(甚至可能是一个骗局),但我找不到这个问题的答案 - 如何使用希伯来字母打印数字?
我尝试更改应用程序语言和/或使用格式提供程序:
myTextBox.Text = 555.ToString(new System.Globalization.CultureInfo("he-IL"));
Run Code Online (Sandbox Code Playgroud)
但我看不到希伯来字母。
正如佐哈尔所说,在大多数用途中,希伯来语使用与英语相同的印度-阿拉伯数字。如果您确实想使用希伯来字母写出数字,一个简单的方法是:
\n\npublic static string FormatHebrew(this int num)\n{\n if(num <= 0)\n throw new ArgumentOutOfRangeException();\n StringBuilder ret = new StringBuilder(new string (\'\xd7\xaa\', num / 400));\n num %= 400;\n if(num >= 100)\n {\n ret.Append("\xd7\xa7\xd7\xa8\xd7\xa9"[num / 100 - 1]);\n num %= 100;\n }\n switch(num)\n {\n // Avoid letter combinations from the Tetragrammaton\n case 16:\n ret.Append("\xd7\x98\xd7\x96");\n break;\n case 15:\n ret.Append("\xd7\x98\xd7\x95");\n break;\n default:\n if (num >= 10)\n {\n ret.Append("\xd7\x9b\xd7\x9c\xd7\x9e\xd7\xa0\xd7\xa1\xd7\xa2\xd7\xa4\xd7\xa6\xd7\x99"[num / 10 - 1]);\n num %= 10;\n }\n if(num > 0)\n ret.Append ("\xd7\x90\xd7\x91\xd7\x92\xd7\x93\xd7\x94\xd7\x95\xd7\x96\xd7\x97\xd7\x98" [num - 1]);\n break;\n }\n return ret.ToString ();\n}\nRun Code Online (Sandbox Code Playgroud)\n\n(请确保您的文本编辑器正确处理字符串的顺序,最主要的是编译器看到的源代码按从低到高的顺序排列它们。一个好的文本编辑器会将其显示为从右到高的顺序- 左,因为这是希伯来语使用的顺序,但有些人会显示它与此相反)。
\n