Wie konvertiere ich ein Double in eine Gleitkomma-String-Darstellung ohne wissenschaftliche Notation in .NET Framework?
"Kleine" Stichproben (effektive Zahlen können beliebig groß sein, z. B. 1.5E200
oder 1e-200
):
3248971234698200000000000000000000000000000000
0.00000000000000000000000000000000000023897356978234562
Keines der Standardnummernformate ist so, und ein benutzerdefiniertes Format scheint auch keine offene Anzahl von Ziffern nach dem Dezimaltrennzeichen zuzulassen.
Dies ist kein Duplikat von Konvertieren von Double in String ohne Darstellung der Potenz in 10 (E-05), da die dort gegebenen Antworten das vorliegende Problem nicht lösen. Die akzeptierte Lösung in dieser Frage bestand darin, einen festen Punkt (z. B. 20 Stellen) zu verwenden, was ich nicht möchte. Eine Fixpunktformatierung und das Trimmen der redundanten 0 lösen das Problem ebenfalls nicht, da die maximale Breite für die feste Breite 99 Zeichen beträgt.
Hinweis: Die Lösung muss korrekt mit benutzerdefinierten Zahlenformaten umgehen (z. B. andere Dezimaltrennzeichen, abhängig von den Kulturinformationen).
Bearbeiten: Bei der Frage geht es eigentlich nur darum, die oben genannten Zahlen zu verschieben. Mir ist bewusst, wie Gleitkommazahlen funktionieren und welche Zahlen damit verwendet und berechnet werden können.