Integer mit 0 darstellen (z. B. 01)

  • VB.NET

Es gibt 15 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Tipp:

    If - Abfrage ob der Wert unter 10 ist.

    Wenn ja dann eine 0 einfügen...


    MFG
    @MB_tech das habe ich schon probiert, jedoch kam da nur die zahl raus ohne null (also einfach 1,2,3 etc.)

    @der_Kurt Klappt danke :) habe selber ne lösung gefunden, aber bisschen komplizierter :D

    VB.NET-Quellcode

    1. CStr(IIf(a >= 10, CStr(a), "0" + CStr(a)))))
    Ich hätte es so gemacht:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. If IsNumeric(TextBox1.Text) = True Then
    3. If TextBox1.Text < 10 Then
    4. Dim Ausgabe As String = Nothing
    5. Ausgabe = TextBox1.Text
    6. Ausgabe = CStr(Ausgabe.Insert(0, "0"))
    7. Label1.Text = "Ausgabe: " & Ausgabe
    8. Else
    9. Label1.Text = "Ausgabe: " & TextBox1.Text
    10. End If
    11. Else
    12. Exit Sub
    13. End If
    14. End Sub


    Benötigt:

    1 Textbox zur Eingabe der Zahl. ---> TextBox1
    1 Label zur Ausgabe ---> Label1
    1 Button zum Starten der Prozedur ---> Button1


    MFG

    PS: Ich hoffe mein Code ist gut zu durchschauen :thumbup:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „MB-Tech“ ()

    Hallo,

    warum so kompliziert? Ich kann mich hier nur 'der Kurt' anschließen:

    VB.NET-Quellcode

    1. TextBox1.text = Zahl.ToString("00"))



    Das formatiert die Ausgabe mit führender 0 bei Werten unter 10.

    Wobei die Variable 'Zahl' z.B. zuvor als Integer definiert wurde.

    Gruß, Snaut
    Ja,

    meine Version habe ich ein wenig ausführlicher gemacht.

    Normalerweise reicht da eine Zeile.

    Aber zum Kapieren denke ich, ist meine Version garnicht so doof :D

    MFG

    VB.NET-Quellcode

    1. If TextBox1.Text < 10 Then

    VB.NET-Quellcode

    1. Ausgabe = TextBox1.Text
    2. Ausgabe = CStr(Ausgabe.Insert(0, "0"))


    Aber zum Kapieren denke ich, ist meine Version garnicht so doof

    ...dann dürfen dir solche Sachen wie oben aber nich passieren ;)
    Was ist denn passiert?

    Mit meiner Methode funktioniert das ganze doch auch?

    Wobei ich deine bevorzuge :rolleyes:

    MFG
    Beim zweiten Beispiel war ich zu schnell. Sorry, mein Fehler. Ist OK

    Das erste Bsp ist wieder mal ein Vergleich einer Zahl mit einem String. Das kann in die Hose gehen (erzeugt u.U. Invalid Cast Exception, oder schlimmstenfalls falsche Werte).
    Ich weiß dass das Thema ziemlich alt ist, aber warum macht ihr es euch so schwer? :D

    VB.NET-Quellcode

    1. Dim Zahl As Integer = 5
    2. If Zahl <= 9 Then
    3. TextBox1.Text = "0" & Zahl
    4. Else
    5. TextBox1.Text = Zahl
    6. End If


    Ergebnis: Wenn die Zahl kleiner oder gleich 9 ist, steht vor der Zahl eine 0. Wenn die Zahl größer als 9 ist, steht keine 0 mehr davor.

    Fertig. Das ist alles!! ;) :D
    Ja ok aber irgendwie ist mir das nicht ganz klar... Da ist ja garkeine Abfrage drin ob die Zahl kleiner als 10 ist. Und es sieht auch irgendwie so aus als ob jede Zahl dann zu 00 wird. Sry aber kenn mit mit der ToString Methode nicht so aus :(

    EDIT:

    Achso... :( Sry falsch kapiert :D Das konvertiert die eigentliche einzelne Zahl in eine Doppelzahl so wie bei eine Digitalen Uhr ^^ Ok kapiert ist doch die bessere Lösung :D

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Piket95“ ()

    Eventuell interessant für ähnliches:

    VB.NET-Quellcode

    1. Dim Value As Integer = 5
    2. Dim Lenght As Integer = 2
    3. Value.ToString.PadLeft(Lenght, "0"c)


    Erscheint mir flexibler als die ToString Funktion.
    Und wesentlich durchschaubarer, als "00". Wie könnte man die Zahl mit der ToString Funktion alleine z.B. binär oder hexadezimal anzeigen lassen?

    VB.NET-Quellcode

    1. Dim Value As Integer = &HF2
    2. Convert.ToString(Value, 16).PadLeft(4, "0"c)

    (Convert.ToString(Value, 16) konvertiert die angegebene Zahl zu einer hexadezimalen Darstellung)
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils
    allgemeion: Zahlen formatieren.



    Edit by ErfinderDesRades: -> alter Topic closed
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

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