如何设置java.util.Date的时区?

2022-08-31 05:24:27

我已经从a中解析了a,但它正在将本地时区设置为对象的时区。java.util.DateStringdate

在解析时区时未指定时区。我想设置对象的特定时区。StringDatedate

我该怎么做?


答案 1

使用日期格式。例如

SimpleDateFormat isoFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
isoFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
Date date = isoFormat.parse("2010-05-23T09:01:02");

答案 2

请注意,对象本身不包含任何时区信息 - 您无法在对象上设置时区。对象包含的唯一内容是自“epoch”(1970 年 1 月 1 日 00:00:00 UTC)以来的毫秒数。java.util.DateDateDate

如ZZ Coder所示,您可以在对象上设置时区,以告诉它要在哪个时区显示日期和时间。DateFormat