我有一个数字条目Nbr
,其中包含阿拉伯数字١٢٣٤٥٦
我的问题是,当我尝试使用 Convert.ToDecimal(Nbr)
时,我收到一条通知,指出输入格式错误(不支持)。
是否有任何解决方案可以用来绕过此问题,而无需将 Nbr 从阿拉伯语转换为标准数字(12345)
谢谢。
最佳答案
我不知道是否有更好的方法,但以下方法有效。使用 Char.GetNumericValue
将阿拉伯数字转换为罗马数字:
Dim arabicNumber = "١٢٣٤٥٦"
Dim romanNumber = From c In arabicNumber Select Char.GetNumericValue(c)
Dim number = string.Concat(romanNumber)
现在您可以使用Decimal.Parse
:
Dim d As Decimal = Decimal.Parse(number)
字符串 ١٢٣٤٥٦
的结果是 123456
。
关于vb.net - 将阿拉伯数字转换为十进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28153030/