package com.example.currenttime;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class Functions {
private static long converTimeStringINToMillis1(String time) {
long milliseconds = 0;
try {
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
// 25/06/2014 8:41:26
Date date;
date = sdf.parse(time);
milliseconds = date.getTime();
} catch (ParseException e) {
// TODO Auto-generated catch block
milliseconds = 0;
e.printStackTrace();
}
return milliseconds;
}
public static String setLastSeenTime1(String time) {
long milliseconds = Math.abs(System.currentTimeMillis()
- converTimeStringINToMillis1(time));
String lastSeen = "";
int seconds = (int) milliseconds/1000;
if (seconds < 60)
lastSeen = String.valueOf(seconds) + "sec ago";
else if (seconds > 60 && seconds < 3600)
lastSeen = String.valueOf((int) seconds/60) + " min ago";
else if (seconds > 3600 && seconds < 86400)
lastSeen = String.valueOf((int) seconds/3600) + " hours ago";
else if (seconds > 86400 && seconds < 172800)
lastSeen = " Yesterday";
else if (seconds > 172800 && seconds < 2592000)
lastSeen = String.valueOf((int) (seconds/(24 * 3600)))
+ " days ago";
else if (seconds > 2592000)
lastSeen = String.valueOf((int) (seconds/(30 * 24 * 3600)))
+ " months ago";
return lastSeen;
}
}
我有顯示逆時我調用這個函數使用這個Android的代碼:如何從美國時間獲取反向時間的Android
btn_retry.setText(Functions.setLastSeenTime1("09/10/2014 8:41:26 AM"))
但問題是,我得到它位於服務器時間我們必須根據當地時間ZOne顯示,以便我可以看到推出尊敬的時間,請建議我如何做我的錯在哪裏請幫助。
它似乎是將世界協調時間設置爲時區...所以你可以詳細說明你正在尋找哪個時區。 – Toppers 2014-10-09 11:38:05
UTC我想包括 – Edge 2014-10-09 11:40:00
轉換時間Utc和手段設備時間和服務器時間的基礎上,我們必須找到差異,我們必須顯示在文本視圖 – Edge 2014-10-09 11:41:23