3

こんにちは、私は単純な日付形式を持っています

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");

このように日付をフォーマットします

2014-04-23 13:15:59.390 

数字が0でない場合を除いて、末尾の0を削除することは可能ですか?

2014-04-23 13:15:59.39

わかりました私は私の問題を見つけました

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); 

問題は、データベースから取得した日付文字列と比較していることです。

データベースは正しい値を含むtimesamp列からそれを読み取りますが、私はそれを

resultSet.getString(i)

そして、何らかの理由で最後の桁を切り取ります...だから私の質問は、日付フィールドを読み取るときにresultSet.getStringが最後の文字を切り取るのはなぜですか?

4

3 に答える 3

2

String メソッドを使用して末尾のゼロを削除します。

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(date).replaceAll("0$", "");

末尾のゼロを 2 つまで削除するには:

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(date).replaceAll("0?0$", "");
于 2014-04-23T13:32:59.880 に答える
0

これは、発生しているロケール固有の問題である可能性があります。これを試して:

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS", Locale.ENGLISH);
于 2014-04-23T13:30:48.687 に答える