Java时间戳格式转换:UTC和上海时间
本文介绍如何使用Java将时间戳(例如1670037101000)转换为”yyyy-MM-dd’T’HH:mm:ss’Z'”格式的UTC时间和上海时间。
以下Java代码片段演示了转换过程:
import java.text.SimpleDateformat; import java.time.ZoneId; import java.util.Date; import java.util.TimeZone; public class TimestampConverter { public static void main(String[] args) { long timestamp = 1670037101000L; // 创建SimpleDateFormat对象,用于格式化日期时间 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); // 转换为UTC时间 formatter.setTimeZone(TimeZone.getTimeZone(ZoneId.of("UTC"))); String utcTime = formatter.format(new Date(timestamp)); System.out.println("UTC时间: " + utcTime); // 转换为上海时间 formatter.setTimeZone(TimeZone.getTimeZone(ZoneId.of("Asia/Shanghai"))); String shanghaiTime = formatter.format(new Date(timestamp)); System.out.println("上海时间: " + shanghaiTime); } }
这段代码首先创建一个SimpleDateFormat对象,并设置其格式为”yyyy-MM-dd’T’HH:mm:ss’Z'”。然后,分别设置时区为UTC和Asia/Shanghai,并使用format()方法将时间戳转换为对应的格式化字符串。 输出结果将分别显示UTC时间和上海时间。 请注意,”yyyy-MM-dd’T’HH:mm:ss’Z'”格式中’Z’表示UTC,如果需要显示其他时区,例如上海的”+08:00″,需要修改格式字符串。
立即学习“Java免费学习笔记(深入)”;
请确保您的项目中包含了必要的Java库。 运行这段代码,您将看到时间戳1670037101000对应的UTC时间和上海时间。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
相关推荐