将由特定于区域性的数字组成的Unicode字符串转换为整数值

bGu*_*com 6 .net c# globalization culture numbers

我正在用马拉地语开发一个程序.在其中,我想通过获取它们的实际整数值来添加/验证在Marathi Unicode中输入的数字.

例如,在马拉地语中:

  • 45 = 45
  • 99 = 99

如何将此Marathi字符串转换"??"为实际的整数值,即45

我google了很多,但没有发现任何有用的东西.我尝试使用System.Text.Encoding.Unicode.GetString()获取字符串然后尝试解析,但也失败了.

Ale*_*kov 4

正确的方法是使用Char.GetNumericValue,它可以让您将单个字符转换为相应的数值,然后构造完整的值。即Char.GetNumericValue(\'\xe0\xa5\xaf\')给你 9。

\n\n

根据您的目标,用相应的不变数字替换每个国家数字字符并使用常规解析函数可能会更容易。

\n\n
Int32.Parse("\xe0\xa5\xaf\xe0\xa5\xaf".Replace("\xe0\xa5\xaf", "9"))\n
Run Code Online (Sandbox Code Playgroud)\n