1. 程式人生 > >本地時間和UTC時間 轉換

本地時間和UTC時間 轉換

本地時間轉UTC時間

//    yyyy-MM-dd HH:mm:ss  東八區 +8
public static String parseStringToUtc(String string) {
String myTime = "";
    if (TextUtils.isEmpty(string)) {
return myTime;
} else {
String Ymd = string.split(" ")[0];
String Hms = string.split(" ")[1];
        int newHour = Integer.valueOf(Hms.split(":"
)[0]) + 8; // 假如 小於 24的時候 正常顯示 大於24 則 天數加1 if (newHour < 24) { if (Hms.split(":").length == 3) { myTime = Ymd + "T" + newHour + ":" + Hms.split(":")[1] + ":" + Hms.split(":")[2]+"Z"; } else if (Hms.split(":").length == 2) { myTime = Ymd + "T" + newHour + ":" + Hms.split
(":")[1] + ":00Z"; } else if (Hms.split(":").length == 1) { myTime = Ymd + "T" + newHour + ":00:00Z"; } return myTime; } else { try { newHour = newHour - 24; Date date = (new SimpleDateFormat("yyyy-MM-dd")).parse(Ymd); Calendar cal = Calendar.getInstance(); cal.setTime(date)
; cal.add(Calendar.DATE, 1); Ymd = new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime()); myTime = Ymd + "T" + newHour + ":"; if (Hms.split(":").length == 1) { return myTime + "00:00Z"; } else if (Hms.split(":").length == 2) { return myTime + Hms.split(":")[1] + ":00Z"; } else if (Hms.split(":").length == 3) { return myTime + Hms.split(":")[1] + ":" + Hms.split(":")[2] + "Z"; } else { return ""; } } catch (ParseException e) { Log.e("error", "parseStringToUtc解析異常"); return ""; } } } }

UTC時間轉本地時間

public static Date parseUTCtoDate(String str) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
df.setTimeZone(TimeZone.getTimeZone("UTC"));
    try {
return df.parse(str);
} catch (Exception e) {
Log.e("error", "DateUtil:" + e.toString());
        return new Date(0);
}
}