Format Nachkommastellen Format Nachkommastellen
Danke Danke:  0
Ergebnis 1 bis 4 von 4
  1. Hallo Zusammen
    Ich bin gerade an einer App und möchte eine ganz einfache Rechnung machen. Wenn das WP Gerät auf Lokalisierung CH gestellt ist, ist das Ergebnis korrekt; wenn jedoch eine andere Lokalisierung eingestellt ist, kommt das Ergebnis falsch (die Kommastelle ist etwa 5 Ziffern weiter hinten).
    Hat jemand Erfahrungen mit diesem Phänomen?
    0
     

  2. 19.11.2013, 14:49
    #2
    Ja, in der Schweiz habt ihr den Punkt als Dezimaltrennzeichen, in Deutschland und Österreich z.B. aber das Komma.

    D.h. wenn du "10.25" bei Schweizer Regionaleinstellung mit Double.Parse umwandelst, dann bekommst du den Wert 10.25. Stellst du das Gerät auf Österreich und gibst "10.25" ein, dann wird der . als Tausendertrennzeichen behandelt und du hast den Wert 10250. Das hängt einfach damit zusammen wie die Leute in den Ländern Zahlen wohl eingeben werden.

    Du kannst beim Parse aber eine Culture mitgeben, die du benutzen willst. Das überschreibt die Automatik und er nimmt dann immer die dort üblichen Zahlenformate an. Schätze mal das ist dein Problem.

    Ansonsten wäre es gut wenn du deinen Code posten könntest, der zu dem falschen Verhalten führt.
    0
     

  3. Danke für deine Antwort. Nachfolgend mein Code, der so nciht funktioniert. Problem ist nur das Ergebnis.

    Code:
     Dim xelement As XElement = xelement.Parse(e.Result, LoadOptions.None)
    
            Dim codes As IEnumerable(Of String) = _
                  From code In xelement.Elements("result") _
                  Let zip = CStr(code.Element("elevation"))
                Select zip
    
            For Each zp As String In codes
                lstResultat.Items.Add(zp)
                Dim k As Double = CDbl(zp) * (3.2808399)
                lstResultat.Items.Add(Double.Parse(k, New System.Globalization.CultureInfo("de-CH")))
                Exit For
            Next zp
    0
     

  4. 20.11.2013, 07:58
    #4
    Du wandelst ja mit CDbl schon zp in einen Double-Variant um => dort passiert der Fehler (siehe auch http://msdn.microsoft.com/en-us/libr...=vs.84%29.aspx). Bei Double.Parse wird dann von Double in String gewandelt und dann geparst.

    Bin leider aus dem C# Bereich und insofern in VB nicht recht bewandert aber wenn du es so schreibst sollte es passen:

    Code:
    Dim k As Double = Double.Parse(zp, New System.Globalization.CultureInfo("de-CH"));
    k = k * 3.2808399
    lstResultat.Items.Add(k);
    0
     

Ähnliche Themen

  1. .RM Format
    Von Simon im Forum Plauderecke
    Antworten: 13
    Letzter Beitrag: 09.01.2005, 19:43
  2. Kino Site im PDA Format
    Von _daniel_ im Forum Plauderecke
    Antworten: 4
    Letzter Beitrag: 09.09.2004, 19:21
  3. Repli Go - Welches Format?
    Von roebbu im Forum Plauderecke
    Antworten: 1
    Letzter Beitrag: 07.03.2004, 17:42
  4. Antworten: 0
    Letzter Beitrag: 23.01.2004, 21:05
  5. welches Sound format?
    Von Speedy im Forum Plauderecke
    Antworten: 4
    Letzter Beitrag: 22.01.2004, 17:58

Besucher haben diese Seite mit folgenden Suchbegriffen gefunden:

double parse mit einer nachkommastelle

samsung s6 tausendertrennzeichen

Stichworte