I am trying to convert numbers to localized strings.
For integers and monetary values, this is quite simple, since a string is just a series of numbers and separators for grouping numbers. For example:.
12 345 678 901 (Bulgarian)12.345.678.901 (Catalan)12,345,678,901 (in English)12,34,56,78,901 (Hindi)12.345.678.901 (frieze)12?345?678?901 (Pashto)12'345'678'901 (German)
I use the GetNumberFormat function to format integers (and GetCurrencyFormat to format monetary values).
But some numbers cannot be reasonably represented in fixed notation and require scientific notation :
or more specifically E-notation :
How can I get a localized version of scientific notation?
Suppose I could build it using localized numbers:
6.0221417930E23 6,0221417930E23 6.0221417930e23 6·0221417930E23 6·0221417930e23 6,0221417930e23 6,,0221417930e23 6.0221417930E+23 6,0221417930E+23 6.0221417930e+23 6,0221417930e+23 6·0221417930E+23 6·0221417930e+23 6,,0221417930e+23 6.0221417930E23 6,0221417930E23 6.0221417930e23 6,0221417930e23 6·0221417930E23 6·0221417930e23 6,,0221417930e23 6.0221417930X10^23 6,0221417930X10^23 6.0221417930x10^23 6,0221417930x10^23 6·0221417930X10^23 6·0221417930x10^23 6,,0221417930x10^23 6.0221417930·10^23 6,0221417930·^23 6.0221417930.10^23 6,0221417930.10^23 6·0221417930·^23 6·0221417930.10^23 6,,0221417930.10^23
but I don’t know if other cultures (cultures other than mine) use E for exponentiation.
Ian boyd
source share