我在java中这样生成的时间是当地的时间还是0时区时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date1 = sdf.parse("2023-05-22 00:00:00");
时间: 2024-03-19 08:45:42 浏览: 117
java时间控件免费
这段代码生成的时间是当地时间。`SimpleDateFormat`类默认使用本机所在的时区来解析日期时间字符串,也就是说,如果你在中国,那么这里生成的时间就是中国的时间,而不是0时区的时间。如果你想要将时间转换成0时区的时间,可以使用`java.util.TimeZone`类来进行转换。例如,可以使用`TimeZone.getTimeZone("GMT")`方法获取0时区的`TimeZone`对象,然后将`SimpleDateFormat`对象的时区设置为0时区,最后使用`parse()`方法解析日期时间字符串:
```java
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
Date date1 = sdf.parse("2023-05-22 00:00:00");
```
这样生成的`date1`对象就是0时区的时间。
阅读全文