Feedback

C# - double in engineering notation darstellen

Veröffentlicht von am 25.10.2006
(8 Bewertungen)
Das .Net Framework enthält in den standardmäßigen Zahlenformatzeichenfolgen
für das Anzeigen von Zahlen in wissenschaftlicher Notation (exponentiell),
nur den Formatbezeichner "E"/"e" bereit.

Dieses entspricht der scientific notation.
Gerade im technischen Bereich wird jedoch eher ein Bezug
auf SI-Symboleinheiten benötigt.

Folgendes Beispiel dazu.

0.0006

ergibt mit double.ToString("E") = 6,000000E-004
für die "richtige" SI-Darstellung wir 600E-6 benötigt.

Mit dieser Methode ist dies nun einfach möglich.
GFU-Schulungen  [Anzeige]

JavaScript für .NET-Entwickler

Sie sind .NET-Entwickler und nun stehen Sie vor der Aufgabe, JavaScript in Ihre Arbeit einzubinden. Die Schulung vermittelt Ihnen die JavaScript Grundlagen und die Funktionen der Scriptsprache. Sie wissen, wie objektorientierte Programmierung in JavaScript funktioniert und lernen abschließend Best Practicies Fälle kennen.

C# 2017/2015/2013 Grundlagen

Nach Abschluss des Kurses sind Ihnen die Datentypen und Klassenbibliotheken von C# bekannt. Außerdem sind Sie in der Lage, mit Variablen umzugehen und deren Typen zu konvertieren. Sie definieren Namespaces und setzen diese ein, Sie erstellen eigene Klassen  und bauen Trouble Shooting ein.

public static string ConvertToEngineering(double d)
    {
        string pattern = "#.##E0";
        
        if(d.Equals(0))
            return d.ToString(pattern);
      
        int Exponent = (int)Math.Floor(Math.Log10(Math.Abs(d)));
      
        switch (Exponent % 3)
        {
            case 1:
            case -2:
                pattern = "##.##E0";
                break;
            case 2:
            case -1:
                pattern = "###.##E0";
               break;
        }
        return d.ToString(pattern);
    } 

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!