+2004-05-30 Michael Koch <konqueror@gmx.de>
+
+ * java/text/DecimalFormat.java
+ (parse): Fixed parsing of decimal strings. Number of maximum
+ digits to be read should now work.
+ * java/text/SimpleDateFormat.java
+ (SimpleDateFormat): Set maximumFractionDigit to 0 for the number
+ formatter. This fixes DateFormatTest.
+
2004-05-30 Michael Koch <konqueror@gmx.de>
* java/nio/Buffer.java
import gnu.java.text.FormatCharacterIterator;
import gnu.java.text.StringFormatBuffer;
+import java.io.IOException;
+import java.io.ObjectInputStream;
import java.util.Currency;
import java.util.HashMap;
import java.util.Locale;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-import java.io.ObjectInputStream;
-import java.io.IOException;
/**
* @author Tom Tromey <tromey@cygnus.com>
// FIXME: handle Inf and NaN.
// FIXME: do we have to respect minimum digits?
- // What about leading zeros? What about multiplier?
+ // What about multiplier?
StringBuffer buf = int_buf;
StringBuffer frac_buf = null;
int start_index = index;
int max = str.length();
int exp_index = -1;
- int last = index + MAXIMUM_INTEGER_DIGITS;
+ int last = index + maximumIntegerDigits;
+
+ if (maximumFractionDigits > 0)
+ last += maximumFractionDigits + 1;
+
+ if (useExponentialNotation)
+ last += minExponentDigits + 1;
if (last > 0 && max > last)
max = last;
numberFormat = NumberFormat.getInstance(locale);
numberFormat.setGroupingUsed (false);
numberFormat.setParseIntegerOnly (true);
+ numberFormat.setMaximumFractionDigits (0);
}
/**
numberFormat = NumberFormat.getInstance(locale);
numberFormat.setGroupingUsed (false);
numberFormat.setParseIntegerOnly (true);
+ numberFormat.setMaximumFractionDigits (0);
}
/**
numberFormat = NumberFormat.getInstance();
numberFormat.setGroupingUsed (false);
numberFormat.setParseIntegerOnly (true);
+ numberFormat.setMaximumFractionDigits (0);
}
// What is the difference between localized and unlocalized? The