将阿拉伯数字转换为十进制

Convert To Decimal an arabic number

我有一个包含阿拉伯数字的数字条目 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