gpt4 book ai didi

timezone - 在 Joda Time 中使用偏移时间时如何打印时区缩写?

转载 作者:行者123 更新时间:2023-12-04 08:18:42 25 4
gpt4 key购买 nike

我正在使用 Joda Time,并且我正在传递使用 DateTimeZone.forOffsetHours() 创建的 DateTimeZones .我想使用标准时区首字母缩写词(例如“PST”、“EST”等)打印这些时区。

但是,每当我打印使用这些时区的 DateTimes 时,我都会得到时区的“hh:mm”表示而不是名称首字母缩略词。

下面是一个例子:

public class tmp {
public static void main( String args[] ) {
// "PST"
System.out.println( DateTimeFormat.forPattern("z").print( new DateTime() ) );

// "PST"
System.out.println( DateTimeFormat.forPattern("z").print( new DateTime( DateTimeZone.forTimeZone( TimeZone.getTimeZone("PST")) )) );

// "-08:00"
System.out.println( DateTimeFormat.forPattern("z").print( new DateTime( DateTimeZone.forOffsetHours(-8) )) );
}
}

有没有办法使用 Joda Time 在最后一个示例中打印出适当的时区首字母缩略词?

最佳答案

不,这是不可能的,但这不是 joda-time 问题,这是因为时区的工作方式。

偏移量(例如 UTC-8)不能确定位置,因此也不能确定取决于位置的首字母缩略词。如您所见 here , 多个时区都有 UTC-8。

第一个示例有效,因为您的默认时区是 PST。第二个有效,因为您通过其名称请求时区(包括所有夏令时等)。在第三个中,您会得到一个固定偏移的时区,它没有与之关联的名称。

关于timezone - 在 Joda Time 中使用偏移时间时如何打印时区缩写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1718484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com