Stringwert auf 2 Nachkommastellen runden

  • Hallo,

    ich bin noch recht neu hier und habe eine Frage.

    Ich habe einen String, der aus einer Textdatei ausgelesen wird, doch ab und zu hat der String eine 4stellige Nachkommazahl.

    Wie runde ich den String so, daß er nur noch 2 nachkommastellen hat ?

    Vielen dank für hilfe

  • [autoit]

    $wert=round(number(stringreplace($str,",",".")),2)

    [/autoit]


    Also zuerst falls es deutsche Zahlenschreibweise ist in englische umwandeln und dann als Zahl durch Round schicken und fertig

  • [autoit]

    func getpriceBuy()

    [/autoit][autoit][/autoit][autoit]

    dim $filename=_FileListToArray("file.txt")

    [/autoit][autoit][/autoit][autoit]

    if @Error<>4 Then

    [/autoit][autoit][/autoit][autoit]

    ;MsgBox(0, "File gefunden", $filename[1])

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    dim $file= FileOPEN("C:\ordner\"& $filename[1], 0)

    [/autoit][autoit][/autoit][autoit]

    dim $linefound=0

    [/autoit][autoit][/autoit][autoit]

    dim $bopreis

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    if $file <> -1 Then

    [/autoit][autoit][/autoit][autoit]

    While $linefound=0

    [/autoit][autoit][/autoit][autoit]

    $line = FileReadLine($file)

    [/autoit][autoit][/autoit][autoit]

    ;MsgBox(0, "testline", $line)

    [/autoit][autoit][/autoit][autoit]

    if StringInStr($line, "True")<>0 and StringinStr($line, "6000")<>0 Then
    $linefound=1

    [/autoit][autoit][/autoit][autoit]

    $bopreisint = _StringBetween($line,"",",")

    [/autoit][autoit][/autoit][autoit]

    $wert=round(number(stringreplace($bopreisint,",",".")),2)

    [/autoit][autoit][/autoit][autoit]

    $bopreis=StringFormat("%%.2f = '%.2f'", $wert)

    [/autoit][autoit][/autoit][autoit]

    ;MsgBox(0, "BoPreis", $bopreis[0])

    [/autoit][autoit][/autoit][autoit]

    ClipPut($bopreis[0])

    [/autoit][autoit][/autoit][autoit]

    EndIf

    [/autoit][autoit][/autoit][autoit]

    Wend

    [/autoit][autoit][/autoit][autoit]

    EndIf

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    FileClose($file)

    [/autoit][autoit][/autoit][autoit]

    FileDelete("C:\Ordner\"& $filename[1])

    [/autoit][autoit][/autoit][autoit]

    return $bopreis[0]

    [/autoit][autoit][/autoit][autoit]

    EndIf

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    EndFunc

    [/autoit]


    sorry, daß ich nochmal stören muß...


    wieso funktioniert das hier nicht ?


    hat das was damit zu tun, daß die zahlenfolge in deutsch ist ?

    2 Mal editiert, zuletzt von glowhollow (25. Juli 2012 um 19:03)

  • habs hinbekommen, vielen dank !


    Schön, dann ist dein Problem ja gelöst. Schön wäre es allerdings auch wenn du das Thema auf gelöst stellst. Dazu einfach deinen Eröffnungsbeitrag bearbeiten und den Präfix (Nähe Überschrift) auf gelöst stellen,

    danke autoBert