HELP: String to Single

  • VB.NET

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

    HELP: String to Single

    Brauche Hilfe bin gerade etwas Verwirrt...
    versuche ein String in single umzuwandeln
    das komische ist wen ich den string "00,5" das daruf lafen lasse :

    VB.NET-Quellcode

    1. Return CInt(Val(str))


    gibt er mir ein integer aus..

    aber wenn ich einfach das :

    VB.NET-Quellcode

    1. Dim s As String = Single.Parse(str, Globalization.NumberStyles.Number).ToString
    2. MessageBox.Show(s)


    davor setze also das das ganze dann so :

    VB.NET-Quellcode

    1. Dim s As String = Single.Parse(str, Globalization.NumberStyles.Number).ToString
    2. MessageBox.Show(s)Return CInt(Val(str))


    aus schaut geht es auf einmal , ich verstehe den Zusammenhang nicht , besonders wen ich MessageBox.Show(s) wegnehme geht es wieder nicht...
    jemand eine idee woran es liegen könnte?
    Kann es sein, dass Du nicht Option Strict On hast?

    VB.NET-Quellcode

    1. Dim str = "0,0123"
    2. ' Konvertierung von String in Single
    3. Dim s As Single = Single.Parse(str, Globalization.NumberStyles.Number)
    4. MessageBox.Show(s.ToString)
    5. ' Konvertierung von Single in String
    6. Dim str2 = s.ToString
    7. MessageBox.Show(str2)
    8. ' Konvertierung von String nach String über Single
    9. Dim str3 = Single.Parse(str, Globalization.NumberStyles.Number).ToString
    10. MessageBox.Show(str3)
    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!

    VB.NET-Quellcode

    1. Return CInt(Val(str))

    TanoshiiSuta schrieb:

    das komische ist wen ich den string "00,5" das daruf lafen lasse :

    Wieso komisch? Siehe hier:
    msdn.microsoft.com/query/dev10…22);k(DevLang-VB)&rd=true
    mit Cint wandelt man etwas in integer um.
    Btw... falls Du Dir nich sicher bist was da für ein String ankommt, evtl TryParse nutzen.

    VB.NET-Quellcode

    1. Dim DeinString As String = "0,1234"
    2. Dim DeinSingle As Single
    3. If Single.TryParse(DeinString, System.Globalization.NumberStyles.Number, System.Globalization.CultureInfo.CurrentCulture, DeinSingle) Then
    4. MessageBox.Show(DeinSingle.ToString)
    5. End If