Verständnisfrage zur Zahlen Formatierung

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von MichaHo.

    Verständnisfrage zur Zahlen Formatierung

    Hallo,

    in meinem Fernstudium habe ich in Einsendeaufgabe 3 mal eine Verständnisfrage.
    die Aufgabe heisst (siehe Bild)
    Meine Antwort habe ich direkt mit in das Bild geschrieben.
    Aber ist das richtig? mich irritiert durch ein und dieselbe Anweisung etwas.
    Bilder
    • E3.PNG

      12,1 kB, 680×245, 248 mal angesehen
    "Hier könnte Ihre Werbung stehen..."
    es kommt auch drauf an, welche Format-Funktion du verwendest - hoffentlich nicht die Format-Funktion aus dem Microsoft.VisualBasic - Namespace?

    ansonsten würde ich einfach empfehlen, die MSDN-Doku zu konsultieren, und einen kleinen Test zu schreiben.

    Und, ja, ich denke, deine erste Lösung reicht, und liefert auch für die anderen Werte das gewünschte Ergebnis.
    Hi @ErfinderDesRades
    hoffentlich nicht die Format-Funktion aus dem Microsoft.VisualBasic - Namespace?


    hab ich mir abgewöhnt 8o

    Es geht nur um die Formatierung in der Console, bei String.Format sieht es ja etwas anders aus.
    MSDN hatte ich schon konsultiert, jedoch nichts zum Stellengerecht untereinander gefunden. Mein kleines Consolen Testprogramm zeigte aber, das das Ergebnis richtig unter einander steht. Um es 1000% genau zu machen hätte ich noch den Font auf Courier New stellen können. Im DataGridview macht man das ja mit Padding, ríchtig?
    "Hier könnte Ihre Werbung stehen..."

    MichaHo schrieb:

    Es geht nur um die Formatierung in der Console, bei String.Format sieht es ja etwas anders aus.
    nein, die Syntax der Formatzeichenfolge ist dieselbe.

    guggemol, wie ein Formatstring unterschiedlich verwendbar ist:

    VB.NET-Quellcode

    1. Dim x = -4521644.12
    2. Console.WriteLine("{0,30:#,#.000}", x)
    3. Console.WriteLine(String.Format("{0,30:#,#.000}", x))
    4. Console.WriteLine(x.ToString("#,#.000")) ' diese Variante kann nicht rechtsbündig anordnen


    Und das machts auch schwierig, die wirkliche Dokumentation dieser Syntax auf MSDN zu finden.
    Am besten gehst du vom ObjectBrowser-String.Format aus, jumpst in die MSDN, und browst von dort weiter zu "benutzerdefinierte ZahlenFormatierung".

    Nochma: die Formatzeichenfolgen sind eine eigene kleine Sprache (genaugenommen eine "Grammatik"), mit ihrer eigenen Syntax.
    Ich find Formatiererei immer sehr schwierig, denn der Compiler kann nicht in die Format-Strings reingucken, und daher weiß man erst durch Laufzeit-Tests, ob man korrekte Syntax reingemacht hat.

    Es gibt mehrere so "Zwerg-Sprachen", die jeweils in Strings reinzuschreiben sind, und dann an Framework-Methoden zu übergeben:
    • Sql-Strings in DbCommand-Objekten
    • Regex
    • Formatierung
    • DataExpressions (also BindingSource.Filter, und DataColumn.Expression)
    • XPath (Abfrage-Ausdrücke für Xml)
    • evtl. weitere, fällt mir grad nicht mehr ein

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „ErfinderDesRades“ ()