Avatar billede bernhof Nybegynder
29. oktober 2004 - 14:04 Der er 1 kommentar og
1 løsning

Komma og punktum i Double

Jeg sidder med en streng, som jeg gerne vil konvertere til en double. Dette gør jeg med følgende kode:

Dim dbl As Double
Dim str As String = "1.2345"

Try
  dbl = Double.Parse(str)
Catch ex As Exception
  'Parse failed
End Try

Problemet med ovenstående er, at punktum i nogle lande fungerer som tusinde-seperator og i andre lande som decimal-seperator. Derfor er der også forskel på, hvordan ovenstående streng "1.2345" bliver konverteret. Kører du fx med amerikanske indstillinger, konverteres det til 1,2345 (lidt over én). Sidder du med danske indstillinger, bliver det til 12345 (lidt over tolv tusinde). Det er et problem, og det skulle gerne konverteres til samme værdi, om man sidder i Thailand eller USA.

Håber I har en løsning! :)
Avatar billede arne_v Ekspert
29. oktober 2004 - 14:25 #1
Double.Parse(str, New CultureInfo("en-US", False))

hvis .

Double.Parse(str, New CultureInfo("da-DK", False))

hvis ,
Avatar billede bernhof Nybegynder
29. oktober 2004 - 15:01 #2
Hvordan kunne jeg overse den? :) Tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester