У меня есть метка времени как строка из Json в виде 11/02/2017 17:25:20
как actualArrivalTime и 11/02/2017 17:25:22
как actualScheduledTime. Я хотел бы рассчитать delayTime, вычитая две временные метки, чтобы получить разницу, которая в этом случае будет +2 или -2 секунды.Java Timestamp Вычитание
1
A
ответ
0
var actualArrivalTime = new Date("11/02/2017 17:25:20");
var actualScheduledTime = new Date("11/02/2017 17:25:22");
var delayTime = (actualArrivalTime - actualScheduledTime)/1000; //-2
В зависимости от того, в каком порядке вам нужно, вы можете переключаться между двумя варами.
0
var date1=new Date("11/02/2017 17:25:20");
var date2=new Date("11/02/2017 17:25:22");
var diff = Math.abs(date1 - date2);
console.log(diff/1000);
0
Попробуйте это:
var arrivalTime = new Date("11/02/2017 17:25:20");
var scheduledTime = new Date("11/02/2017 17:25:22");
var diff = arrivalTime.getTime() - scheduledTime.getTime();
var diffInMs = (diff/1000);
1
Сначала необходимо разобрать строки в дату - в вашем случае LocalDateTime
class представляется целесообразным. Затем вы можете рассчитать разницу:
String actualArrivalTime = "11/02/2017 17:25:20";
String actualScheduledTime = "11/02/2017 17:25:22";
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss");
LocalDateTime arrival = LocalDateTime.parse(actualArrivalTime, fmt);
LocalDateTime scheduled = LocalDateTime.parse(actualScheduledTime, fmt);
long seconds = ChronoUnit.SECONDS.between(arrival, scheduled);
System.out.println("Time difference in seconds: " + seconds);
Извините, что спросила. Это решение для Java или JavaScript? Я работаю над java ... потянув данные от Json. Благодарю. –