¿Cómo convertir un doble en una representación de cadena de punto flotante sin notación científica en .NET Framework?
Muestras "pequeñas" (los números efectivos pueden ser de cualquier tamaño, como 1.5E200
o 1e-200
):
3248971234698200000000000000000000000000000000
0.00000000000000000000000000000000000023897356978234562
Ninguno de los formatos de números estándar es así, y un formato personalizado tampoco parece permitir tener un número abierto de dígitos después del separador decimal.
Esto no es un duplicado de Cómo convertir doble en cadena sin la representación de potencia a 10 (E-05) porque las respuestas que se dan allí no resuelven el problema en cuestión. La solución aceptada en esta pregunta fue usar un punto fijo (como 20 dígitos), que no es lo que quiero. Un formato de punto fijo y recortar el 0 redundante tampoco resuelve el problema porque el ancho máximo para el ancho fijo es de 99 caracteres.
Nota: la solución tiene que tratar correctamente con formatos numéricos personalizados (por ejemplo, otro separador decimal, dependiendo de la información cultural).
Editar: La pregunta es realmente solo sobre mostrar los números mencionados anteriormente. Soy consciente de cómo funcionan los números de punto flotante y qué números se pueden usar y calcular con ellos.