ミリ秒を含む2つのビデオの期間ギャップを取得したい。A時間とB時間との間にどのようにギャップを設けることができますか?
A:01:18:19.92、B:01:18:19.57
public String calTime(String A, String B) {
String sFormat = "HH:mm:ss.SSS";
SimpleDateFormat dFormat = new SimpleDateFormat(sFormat);
try {
Date A1 = dFormat.parse(A);
Date A2 = dFormat.parse(B);
//A1 = Thu Jan 01 01:18:19 KST 1970
//A1.getTime() = -27700943
//A2 = Thu Jan 01 01:18:19 KST 1970
//A2.getTime() = -27701000
System.out.println(A1.getTime() - A2.getTime());
} catch (ParseException ex) {}
}
なぜ
getTime()
からの値が負でありますか?私はyy-MM-dd Dateメソッドを定義していないのですか?Dateメソッドを使用してHH:mm:ss.SSSのような計算時間を取得できますか?年、月、日などは必要ありません。
どのように私は2つの期間の通常のギャップができますか?
ありがとうクラウダー本当に良い答え!! Duration.ofMillisを試してみます:) – ofleaf
実際、 'java.time.format'パッケージのデュレーションフォーマッタはありません。その目的のために、人々は自分の回避策(必ずしも容易ではない)を書くか、外部ライブラリを使用する必要があります。 –