java格式化格林威治时间
第一步:首先将格林威治时间替换为“yyyy-MM-dd HH:mm:ss”格式
例如我们接口提供的格林威治时间格式为“2017-04-25T08:45:41Z” ,需要先转化为“2017-04-25 08:45:41”
public static String stringReplace(String string) {
if (TextUtils.isEmpty(string)) {
return "";
}
char[] array = string.toCharArray();
int size = array.length;
char[] arrayPlace = new char[array.length - 1];
for (int i = 0; i < size; i++) {
if (i == size - 1) {
break;
}
if (array[i] == 'T') {
arrayPlace[i] = ' ';
} else {
arrayPlace[i] = array[i];
}
}
return new String(arrayPlace);
}
第二部:然后转化为java格式时间
public static String GTMToLocal(String GTMDate) {
String convertString = stringReplace(GTMDate);
SimpleDateFormat format;
format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH);
Date result_date;
long result_time = 0;
if (null == GTMDate) {
return GTMDate;
} else {
try {
format.setTimeZone(TimeZone.getTimeZone("GMT00:00"));
result_date = format.parse(convertString);
result_time = result_date.getTime();
format.setTimeZone(TimeZone.getDefault());
return format.format(result_time);
} catch (Exception e) {
e.printStackTrace();
}
}
return GTMDate;
}