【发布时间】:2014-03-17 13:27:00
【问题描述】:
我无法找到如何将 unix 时间戳转换为我的 Android 应用程序的正常日期时间。在我的用例中,所有事件报告都是在美国山区时间提交的。服务器处理时间并存储正确的 unixtime。但是,当我的应用程序从服务器检索报告时间时,无论用户位于世界的哪个地方,它都需要在美国山区时区显示 unix 时间戳。它还需要处理由夏令时引起的 GMT 偏移量的变化。
以下是我尝试过的,但我不断收到错误。它说它无法解析 setTimeZone 方法,并且在该函数中需要一个“,”。
//TODO: convert to readable time
String EventRegDate;
String EventRegTime;
EventUnixTime = eventData.getEventUnixtimeTime();//Returns unixtime of event in seconds
EventUnixTimeMilli = EventUnixTime * 1000; //convert to milliseconds
String timezone = "US/Mountain";
Calendar.setTimeZone(TimeZone timezone);
Date EventDate = new Date(EventUnixTimeMilli);
SimpleDateFormat EventDateFormatter = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat EventTimeFormatter = new SimpleDateFormat("HHMM");
// set strings to use when setting text views
EventRegDate = EventDateFormatter.format(EventDate);
EventRegTime = EventTimeFormatter.format(EventDate);
【问题讨论】:
标签: android datetime timezone unix-timestamp dst