考虑以下代码:
Time time1 = new Time("America/Los_Angeles"); // UTC -8
Time time2 = new Time("Pacific/Kiritimati"); // UTC +14
time1.setToNow();
time2.setToNow();
Log.d("timetest", "America/Los_Angeles: " + time1.toMillis(false));
Log.d("timetest", "Pacific/Kiritimati : " + time2.toMillis(false));
这是获取输出的日志:
08-03 07:27:50.687: D/timetest(28411): America/Los_Angeles: 1375540070000
08-03 07:27:50.687: D/timetest(28411): Pacific/Kiritimati : 1375540070000
正如您所看到的,毫秒值是相同的,即使它们由于时区而相隔整整 22 小时。这使我相信它Time.toMillis(boolean)
基于 UTC,而不是Time
's 指定的时区。Time
我需要一种方法来获取基于' 时区的毫秒数。有任何想法吗?