私はJavaでアプリケーションを開発していて、この奇妙な振る舞いを見つけました。
コントロールパネルで地域設定の形式をハンガリー語(システムのデフォルト)に設定すると、この例外が発生しますが、英語に設定すると、完全に機能します。また、私が最初にプログラムを開発している仮想Mandrivaでも動作します。
これは、問題の原因となるコードスニペットです。
public String stattxt(){
double dt = time_avg();
double bpm = (Double.compare(dt, 0) == 0) ? 0 : msec2bpm(dt);
String s = "<html>Number of control points: " + timestamps.size() + "<br>Average dt: " +
Double.valueOf(new DecimalFormat("#.####").format(dt).toString()) + " ms<br>" +
"Average BPM: " + Double.valueOf(new DecimalFormat("#.####").format(bpm).toString()) + "<br> </html>";
return s;
}
ここで、time_avg()
とmsec2bpm
はdouble(万が一Doubleではない)値を返します。
地域の設定に関係なく、どうすればこれを機能させることができますか?どんな助けでもいただければ幸いです。