# String zu Double parsen (multiple points)



## javanoobanf (10. Okt 2011)

Hallo,

ich möchte einen String 1.000,46 zu einem Double parsen, aber bekomme natürlich eine Exception, wenn ich folgendes versuche:


```
String a = "1.000,46";
double preis = Double.parseDouble(a.replaceAll(",", ".").trim());
```



```
Exception in thread "main" java.lang.NumberFormatException: multiple points
	at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
	at java.lang.Double.parseDouble(Unknown Source)
	at core.Test.main(Test.java:64)
```


Wie kann ich das richtig parsen, sodass am Ende 1000.46 rauskommt? Danke


----------



## kay73 (10. Okt 2011)

```
double preis = Double.parseDouble("1.000,46".trim().replaceAll("\\.", "").replaceAll(",", "."));
```


----------



## Gast2 (10. Okt 2011)

Oder etwas schöner mit dem NumberFormat:

```
NumberFormat nf = NumberFormat.getInstance();

		try {
			String a = "1.000,46";
			double d = nf.parse(a).doubleValue();
		} catch (ParseException e) {
			e.printStackTrace();
		}
```


----------

