ユーザから入力された8桁の数値をTimestamp型に変換する、下記のプログラムを作成したのですが、 例えば、"20111031"を入力して実行した時に、 最終的に出力されるデータは"2011-10-31 23:59:59.0"となります。(ミリ秒部分が"0") これを、 "2011-10-31 23:59:59.9"(ミリ秒部分が"9"など)のように、 その日の時刻一杯になるような値に変換するには、 プログラムをどのように修正すれば良いでしょうか? import java.sql.Timestamp; import java.text.DateFormat; import java.text.SimpleDateFormat; public class TimeCheck { public static void main(String[] args) { String inputTime = args[0] + "235959"; DateFormat inDateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); DateFormat outDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { String oldTime = outDateFormat.format(inDateFormat.parse(inputTime)); // Timestamp型に変換 Timestamp newTime = Timestamp.valueOf(oldTime); System.out.print(newTime); } catch (Exception e) { e.printStackTrace(); } } }
↧