当前位置: 首页 > 知识库问答 >
问题:

如何将日期对象从UTC转换为任意时区,如IST,WAST

严狐若
2023-03-14
var localTimeZone = new Date().getTimezone(); 

之后,我想要一个有三个参数的方法

targetTimeFromZone(Date date, String fromTZ, String toTZ);

其中fromtz=“UTC”和toTZ=“IST”或CST或任何时区。

共有1个答案

祁曦哲
2023-03-14

避免java.util.Date和.Calendar,因为它们非常麻烦。使用Joda-Time或Java8中的Java.time包。

根据乔恩·斯基特的评论,避免3或4个字母的时区代码,因为它们既不标准化也不唯一。使用正确的时区名称。

与J.U.Date不同,Joda-Time中的DateTime知道自己分配的时区。

DateTimeZone timeZone = DateTimeZone.forID( "Asia/Kolkata" ); // or get the default time zone.
java.util.Date someDate = new java.util.Date(); // As if we were passed a Date.
DateTime dateTime = new DateTime( someDate, timeZone );
DateTime dateTimeMontréal = dateTime.withZone( DateTimeZone.forID( "America/Montreal" ) );
DateTime dateTimeUtc = dateTime.withZone( DateTimeZone.UTC );
java.util.Date date = dateTime.toDate();
 类似资料:
  • > 如何将IST转换为UTC,即(至2014年5月14日18:30:00) 我的代码是 > 如果用户从任何区域输入相同的日期,则将获得UTC时间(例如:从澳大利亚输入,然后是2014年5月15日00:00:00至2014年5月14日16:00:00) 请提出任何建议。

  • 我做了下面的代码,但我知道它是正确的或不是,请协助我做正确的方式时区转换。 我把UTC日期作为json字符串,转换成用户的时区格式,并显示Android端

  • 问题内容: 这是我的约会日期“ 15-05-2014 00:00:00” 如何将IST转换为UTC即(到14-05-2014 18:30:00) 基于时区到UTC时区。 我的代码是 如果用户从任何区域输入相同的日期,则将获得UTC时间(例如:从澳大利亚,然后从15-05-2014 00:00:00到14-05-2014 16:00:00) 请任何建议。 问题答案: 您不能将日期值“转换为”其他时区

  • 问题内容: 假设您网站的用户输入了日期范围。 您需要将此日期发送到服务器进行某些处理,但是服务器希望所有日期和时间都采用UTC。 现在,假设用户位于阿拉斯加,夏威夷或斐济。由于它们所处的时区与UTC完全不同,因此需要将日期范围转换为以下形式: 使用JavaScript Date对象,您如何将第一个“本地化”日期范围转换为服务器可以理解的范围? 问题答案: 该方法返回简化的扩展ISO格式(ISO86

  • 问题内容: 如何将这样的日期(在时区中)转换为时区?确保夏令时能正确处理? 问题答案: 使用和。

  • 输入:- 2018-01-19T17:04:54.923Z; 输出:-2018-01-19 17:04:54; 我怎样才能获得在所有浏览器中都能用JAVASCRIPT工作的通用逻辑