Ich habe einen Float Wert "1E+35" gibt mir ToString für den Wert aus. Nun möchte Ich den Wert aber gleich wie ein anderes Programm als "100000E+30" darstellen?? Ich hab in der MSDN nichts gefunden wie Ich das mit einem FormatString bewerkstelligen könnte...
cSharp Projekte : https://github.com/jogibear9988
Selber machen?
Wie sieht die Regel aus, nach der du das so formatieren willst?
Hallo jogibear9988,
bist du dir sicher, dass "100000E+30" und nicht "100E+33" gemeint ist? Das wäre dann die Technische Notation, bei der die Exponenten Vielfache von 3 sind und die Mantisse immer 1 bis 3 Stellen hat (siehe auch Wissenschaftliche Notation).
Oder sind deine Exponenten immer Vielfache von 6? Oder soll die Mantisse immer sechs Stellen haben? Wie ist dein Format definiert?
Allerdings gibt es in .NET meines Wissens nicht mal ein Formatzeichen für die technische Notation gibt. Eigentlich verwunderlich. Ich hoffe, ich habe nichts übersehen.
Es ist also wohl wirklich Selbermachen angesagt.
Siehe auch Engineering notation in C#?
herbivore
Du kannst per Format-String bestimmen, wie die Ausgabe aussehen soll.
Mit
Console.WriteLine("{0:000.0E+000}", 3.14159265);
bekommst du
314,2E-002
als Ausgabe.
Grüße,
Georg