两种转换2021-01-01T00:00:00Z为2021-01-01 00:00:00时间格式的方式(UTC时间转为yyyy-MM-dd HH:mm:ss)

public static String UTCStringtODefaultString(String UTCString) {
		try {
			UTCString = UTCString.replace("Z", " UTC");
			SimpleDateFormat utcFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss Z");
			SimpleDateFormat defaultFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
			Date date = utcFormat.parse(UTCString);
			return defaultFormat.format(date);

		} catch (ParseException pe) {
			pe.printStackTrace();
			return null;
		}
	}


	public String dealDateFormat(String oldDate) {
		Date date1;
		DateFormat df2;
		try {
			oldDate = oldDate.replace("Z", " UTC");
			DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss Z");
			Date date = df.parse(oldDate);
			SimpleDateFormat df1 = new SimpleDateFormat("EEE MMM dd HH:mm:ss Z yyyy", Locale.UK);
			date1 = df1.parse(date.toString());
			df2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
			return df2.format(date1);
		} catch (ParseException e) {
			e.printStackTrace();
			return null;
		}

	}

UTC日期即世界时,即格林尼治平太阳时,是表示地球自转速率的一种形式。

UTC就是世界标准时间,与北京时间相差八个时区。所以只要将UTC时间转化成一定格式的时间,再在此基础上加上8个小时就可得到北京时间。

如果后面带.000毫秒值就修改为

  DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z");
学习时的痛苦是暂时的 未学到的痛苦是终生的
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/juanxincai/p/14841601.html