0
我無法找到如何將我的Android應用程序的unix時間戳轉換爲正常日期時間。在我的使用案例中,所有事件的報告均在美國山區時間提交。服務器處理時間並存儲正確的unixtime。但是,當我的應用程序從服務器檢索報告時間時,無論用戶所在的世界何處,都需要在美國山區時區顯示unix時間戳。此外,它還需要處理由夏時制造成的GMT偏移量的變化。使用觀察DST的靜態時區在Android中轉換Unix時間戳
以下是我所嘗試的,但我不斷收到錯誤。它說它不能解決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);