imam dva "timestampa", i treba mi interval vremena izmedju njih.
vremena su u string formatu. prebacim ih u instance Date klase, zatim svako od ta dva vremena predstavim kao Long broj (broj milisekundi od 01/01/1970) i oduzmem manji od veceg. tako dobijen long (razliku dva vremena) zelim da predstavim kao novu instancu Date-a. medjutim, ne dobijam validan rezultat.
Code:
String d1 = "05/23/2007 13:01:06.616";
String d2 = "05/23/2007 13:05:21.837";
String dateFormat1 = "MM/dd/yyyy HH:mm:ss.SSS";
String dateFormat2 = "HH:mm:ss.SSS";
SimpleDateFormat df = new SimpleDateFormat(dateFormat1);
try {
Date date1 = df.parse(d1);
Date date2 = df.parse(d2);
pt("date1: "+df.format(date1)+" (long: "+date1.getTime()+")");
pt("date2: "+df.format(date2)+" (long: "+date1.getTime()+")");
long dd = date2.getTime() - date1.getTime();
Date date3 = new Date(dd);
df = new SimpleDateFormat(dateFormat2);
pt("date3: "+df.format(date3)+" (long: "+date3.getTime()+")");
} catch (ParseException exc) {
// TODO Auto-generated catch block
exc.printStackTrace();
}
String d1 = "05/23/2007 13:01:06.616";
String d2 = "05/23/2007 13:05:21.837";
String dateFormat1 = "MM/dd/yyyy HH:mm:ss.SSS";
String dateFormat2 = "HH:mm:ss.SSS";
SimpleDateFormat df = new SimpleDateFormat(dateFormat1);
try {
Date date1 = df.parse(d1);
Date date2 = df.parse(d2);
pt("date1: "+df.format(date1)+" (long: "+date1.getTime()+")");
pt("date2: "+df.format(date2)+" (long: "+date1.getTime()+")");
long dd = date2.getTime() - date1.getTime();
Date date3 = new Date(dd);
df = new SimpleDateFormat(dateFormat2);
pt("date3: "+df.format(date3)+" (long: "+date3.getTime()+")");
} catch (ParseException exc) {
// TODO Auto-generated catch block
exc.printStackTrace();
}
kao rezultat izvrsavanja ovog koda dobija se:
Code:
date1: 05/23/2007 13:01:06.616 (long: 1179918066616)
date2: 05/23/2007 13:05:21.837 (long: 1179918066616)
date3: 01:04:15.221 (long: 255221)
date1: 05/23/2007 13:01:06.616 (long: 1179918066616)
date2: 05/23/2007 13:05:21.837 (long: 1179918066616)
date3: 01:04:15.221 (long: 255221)
dakle, razlika ova dva vremena bi trebalo da bude: 00:04:15.221 a ne: 01:04:15.221 kao sto je ispisano.
odakle se stvorio ovaj jedan sat viska?