Veröffentlicht 20. Mai 200322 j Hallo zusammen, Gibt es in Java eine Klasse mit der ich einen String (Bsp. 100.000.000,99) in einen Double oder BigDecimal umwandeln kann, ohne dass ich den String vorher mit replace() bearbeiten muss? Die umgekehrte Methode kenne ich, dass man einen Double über DecimalFormat in einen String umwandeln kann. Aber wie bekomme ich einen gültigen Double oder besser BigDecimal zurück? Lässt sich das über die Number-Klasse irgendwie bewerkstelligen?? Danke im Voraus Krain
20. Mai 200322 j Also normalerweise konvertiert man mit Double.parseDouble(arg0) aber wenn Da Kommas oder zu viel Punkte drin sind birngt er ne NumberFormat Exception. MfG Spoom
20. Mai 200322 j Autor Ja - das weiß ich ja. Ich dachte, dass das vielleicht über die Locale funktionieren könnte. Natürlich müsste der String auch ein gültiges Format haben. Wie in DE '.' für Tausendertrennung und ',' für Nachkommastellen.
20. Mai 200322 j Schreib dir halt ne methode MyParseDouble() und da machst DU die Punkte weg und aus nem Komma machst Du nen Punkt ... MfG Spoom
20. Mai 200322 j Autor Danke - Das hab ich ja schon. Aber meinem Projektleiter gefällt das so nicht ganz. Deswegen sollte ich nach einer 'besseren' Methode suchen. Aber mir fällt nichts gescheites mehr dazu ein.
20. Mai 200322 j Naja Java ist "internationla" deswegen glaub ich kaum, das die sich an Deutsche konventionen halten.... Das ist wie mit den Datums Formaten ... MfG Spoom
20. Mai 200322 j Also raten bringt ziemlich wenig. DecimalFormat df = new DecimalFormat(); Number n = df.parse("1.000.000.000,99"); double x = n.doubleValue(); DecimalFormat: Creates a DecimalFormat using the default pattern and symbols for the default locale. This is a convenient way to obtain a DecimalFormat when internationalization is not the main concern. oder: NumberFormat df = NumberFormat.getInstance(); Number n = df.parse("1.000.000.000,99"); double x = n.doubleValue(); NumberFormat: Helps you to format and parse numbers for any locale. Your code can be completely independent of the locale conventions for decimal points, thousands-separators, or even the particular decimal digits used, or whether the number format is even decimal. Gruß Jaraz
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.