Double.parseDouble("2.2250738585072012e-308")
BigDecimalを使おうか、あるいはJNIでCのライブラリを呼ぼうか、と色々考えたけど、
これでいいのかな?
public static double parseDouble(String text) { if ("2.2250738585072012e-308".equals(text)) { return 2.2250738585072012e-308; } else { return Double.parseDouble(text); } }
2011/02/25追記:
この様な対応ではダメです。
他の文字列でも同じ現象を起こす場合があります。
http://d.hatena.ne.jp/a-san/20110225#p1