SimpleDateFormat对象更改时区,而无需添加/减去正确的小时数

问题描述

我有一个字符串,它表示UTC时区中的日期(因为我的数据库使用UTC)。我想将此字符串转换为带有SimpleDateFormat的日期。问题是将其转换为CEST时区中的日期,而没有添加将UTC和CEST分开的2小时。这是代码:

//This is a date in UTC
String text = "2020-09-24T09:45:22.806Z";
//Here I define the correct format (The final Z means that it's UTC)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); 
//Then I parse it
Date date = sdf.parse(text);
//Then I print it
System.out.println(date);  

打印结果是

Thu Sep 24 09:45:22 CEST 2020

为什么要进行CEST?我希望它保持UTC,但是如果必须成为CEST,至少要加上2小时

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)