Java 使用joda time解析包含时区的日期字符串
我正在尝试使用joda time解析日期字符串,不幸的是,我找不到解析时区的方法 以下是我的最新尝试:Java 使用joda time解析包含时区的日期字符串,java,jodatime,Java,Jodatime,我正在尝试使用joda time解析日期字符串,不幸的是,我找不到解析时区的方法 以下是我的最新尝试: String s=“2013-09-20 13:23:50等/GMT”; DateTimeFormat.forPattern(“yyyy-MM-dd HH:MM:ss ZZZ”).parseDateTime 导致 我的模式中的错误在哪里?您应该使用版本为2.0或更高版本的Joda Time库。 此功能是在版本2中添加的 参见1.6->2.0 允许格式模式中的“Z”和“ZZ”将“Z”解析为
String s=“2013-09-20 13:23:50等/GMT”;
DateTimeFormat.forPattern(“yyyy-MM-dd HH:MM:ss ZZZ”).parseDateTime
导致
我的模式中的错误在哪里?您应该使用版本为
2.0
或更高版本的Joda Time
库。此功能是在版本
2
中添加的参见1.6->2.0
- 允许格式模式中的“Z”和“ZZ”将“Z”解析为“+00:00”[2827359]
- 支持解析日期时区ID,如欧洲/伦敦
- 支持解析日期时区名称,如“EST”和“British Summer time”。这些名称不是唯一的,因此新的API方法将继续使用 生成器要求您传入一个地图,其中列出您要输入的所有名称 希望能够解析。现有的方法是不变的,不会改变 不允许解析
您应该使用版本为
2.0
或更高版本的Joda Time
库。此功能是在版本
2
中添加的参见1.6->2.0
- 允许格式模式中的“Z”和“ZZ”将“Z”解析为“+00:00”[2827359]
- 支持解析日期时区ID,如欧洲/伦敦
- 支持解析日期时区名称,如“EST”和“British Summer time”。这些名称不是唯一的,因此新的API方法将继续使用 生成器要求您传入一个地图,其中列出您要输入的所有名称 希望能够解析。现有的方法是不变的,不会改变 不允许解析
要解析带有时区的datetime字符串,可以对[Java]使用next:
new DateTimeFormatterBuilder()
// z is timezone name
.appendPattern("yyyy-MM-dd HH:mm:ss z")
// special map to map names to time zones
.appendTimeZoneName(new HashMap() {{
put("UTC", DateTimeZone.UTC);
}})
.toParser
或[斯卡拉]
new DateTimeFormatterBuilder()
.appendPattern("yyyy-MM-dd HH:mm:ss z")
.appendTimeZoneName(Map("UTC" -> DateTimeZone.UTC))
.toParser
要解析带有时区的datetime字符串,可以对[Java]使用next:
new DateTimeFormatterBuilder()
// z is timezone name
.appendPattern("yyyy-MM-dd HH:mm:ss z")
// special map to map names to time zones
.appendTimeZoneName(new HashMap() {{
put("UTC", DateTimeZone.UTC);
}})
.toParser
或[斯卡拉]
new DateTimeFormatterBuilder()
.appendPattern("yyyy-MM-dd HH:mm:ss z")
.appendTimeZoneName(Map("UTC" -> DateTimeZone.UTC))
.toParser
哪个时区是
Etc/GMT
?我知道GMT
但是什么是Etc
?你用的是哪种版本的joda time
?我尝试了您的示例(版本2.3),它正在成功执行@Aarondigula这是一个Posix的东西也可以在这里看到@Aarondigula它在文档@mabbas中我使用的是2.1哪个时区是Etc/GMT
?我知道GMT
但是什么是Etc
?你用的是哪种版本的joda time
?我尝试了您的示例(版本2.3),它正在成功执行@Aarondigula这是一个Posix的东西,也可以在这里看到@Aarondigula它在文档@mabbas中,我正在使用2.1。我原来的问题是一个令人讨厌的类路径问题,导致使用了joda time的旧版本。感谢Ilya给我的提示,它为我指出了正确的解决方案。原来我原来的问题是一个令人讨厌的类路径问题,导致使用了joda time的旧版本。感谢Ilya给我的提示,让我找到了正确的解决方案。