基本的に、文字列データをタイムスタンプ形式に変換しようとしています。データをタイムスタンプ形式に変換すると、SimpleDateFormat によって 3 分が追加されました。ミリ秒のデータは 3 分に等しいためです。しかし、タイムスタンプ値にミリ秒のデータを保持したいのです。
コード:
public Double TimestampTest(String Timestamp ){
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date parsedDate = null;
try {
parsedDate = dateFormat.parse(Timestamp);
} catch (ParseException e1) {
e1.printStackTrace();
}
Timestamp timestamp = new java.sql.Timestamp(parsedDate.getTime());
...
}
タイムスタンプ値
2002-04-17 23:45:58.983
テストケース用
System.out.println(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse("2015-04-22T19:54:11.219983Z"));
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS'Z'").parse("2015-04-22 19:54:11.219983Z"));
結果はどちらも同じ
Wed Apr 22 19:57:50 EEST 2015
Wed Apr 22 19:57:50 EEST 2015
なぜなら
219 983 milliseconds = 3.66638333 minutes
要約すると、msデータを保存したいのですが、それを行う方法はありますか?