datetime - date time in Android inconsistencies -
i stuck example running on android:
simpledateformat sdf = new simpledateformat("dd-mm-yyyy kkmm"); sdf.settimezone(timezone.gettimezone(time.timezone_utc)); date scheduleddatetime = sdf.parse(sms.getscheduleddatetime()); log.i(tag, "scheduleddatetime : " + scheduleddatetime); // scheduleddatetime : fri jan 06 23:58:00 hnec 2012 log.i(tag, "scheduleddatetime milli : " + scheduleddatetime.gettime()); // scheduleddatetime milli : 1325890680000 calendar calendar = calendar.getinstance(); calendar defaulttzcalendar = calendar.getinstance(timezone.getdefault()); calendar utctzcalendar = calendar.getinstance(timezone.gettimezone(time.timezone_utc)); calendar.settime(scheduleddatetime); defaulttzcalendar.settime(scheduleddatetime); utctzcalendar.settime(scheduleddatetime); log.i(tag, "calendar : " + calendar.gettimeinmillis()); // calendar : 1325890680000 log.i(tag, "defaulttzcalendar : " + defaulttzcalendar.gettimeinmillis()); // defaulttzcalendar : 1325890680000 log.i(tag, "utctzcalendar : " + utctzcalendar.gettimeinmillis()); // utctzcalendar : 1325890680000
and @ this:
final long currenttimemillis = system.currenttimemillis(); log.i(tag, " currenttimemillis " + currenttimemillis); // currenttimemillis 1341608182431 date d = new date(currenttimemillis); log.i(tag, " currenttimemillis " + d + " ::: d.gettime() = " + d.gettime()); // currenttimemillis fri jul 06 22:56:22 haec 2012 ::: d.gettime() = 1341608182431
how possible have such difference of 15713902431 between 2 date looks same : fri jan 06 23:58:00 hnec 2012 , fri jul 06 22:56:22 haec 2012
btw,
hnec (in french) normal central europ time
haec advanced central europ time (which dst)
thanks
all looks fine me @ end part. dates don't "look same". 1 in july, other january. 15713902431 milliseconds - 182 days - seems entirely reasonable.
now why data isn't parsing correctly - format broken:
new simpledateformat("dd-mm-yyyy kkmm");
note "mm" between "dd" , "yyyy". mm
minutes, not months.
i suspect should using:
new simpledateformat("dd-mm-yyyy kkmm");
then might values in right month :)
Comments
Post a Comment