I have a string containing a number in a non-ascii format e.g. unicode BENGALI DIGIT ONE (U+09E7) : \"১\"
How do I parse this as an integer in .NET?
It looks like this is not possible using built in functionality:
The only Unicode digits that the .NET Framework parses as decimals are the ASCII digits 0 through 9, specified by the code values U+0030 through U+0039.
...
The attempts to parse the Unicode code values for Fullwidth digits, Arabic-Indic digits, and Bengali digits fail and throw an exception.
(emphasis mine)
Very strange as CultureInfo("bn-BD").NumberFormat.NativeDigits
does contain them.