Estoy tratando de convertir números en cadenas localizadas.notación exponencial localizada?
Para enteros y valores de dinero es bastante simple, ya que la cadena es solo una serie de dígitos y separadores de agrupación de dígitos. Por ejemplo:
12 345 678 901
(Bulgaria)12.345.678.901
(catalán)12,345,678,901
(Inglés)12,34,56,78,901
(Hindi)12.345.678.901
(Frisia)12?345?678?901
(Pashto)12'345'678'901
(alemán)
utilizo la función Windows GetNumberFormat
para formatear enteros (y GetCurrencyFormat
para formatear valores monetarios).
Pero algunos números no pueden ser representados razonablemente en notación fija, y requieren scientific notation:
- 6,0221417930 × 10
o más específicamente E notation:
- 6.0221417930E23
¿Cómo puedo obtener la versión localizada de la notación científica?
supongo que podría construirlo usando números localizados:
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
pero yo no sé si otras culturas (culturas además de la mía) utilizan un E para exponenciación.
Solo una nota, que es realmente una pregunta real y honesta: ¿hay realmente culturas donde la porción decimal de valores decimales tiene un separador de "milésimas"? – Romain
@Romain: no veo ninguna configuración regional en Windows que provoque que 'GetNumberFormat' use cualquier agrupación de dígitos. –