org.threeten.bp.format.DateTimeParseException:无法在 $.root.bsa[0].posted 的索引 25 处解析文本'Sat Sep 19 2020



我试图解析一个日期,它看起来像:Sat Sep 19 2020 07:14 AM PDT转换为CCD_ 2。

我正在使用这个格式化程序

DateTimeFormatter.ofPattern(
"EEE MMM dd yyyy hh:mm a zzz",
Locale.US
)

我正在尝试用转换字符串

ZonedDateTime.parse(
value,
formatter
)

但是,这会引发以下异常:org.threeten.bp.format.DateTimeParseException: Text 'Sat Sep 19 2020 07:14 AM PDT' could not be parsed at index 25 at $.root.bsa[0].posted

我真的不确定我的日期格式字符串中的错误在哪里:我已经运行过了http://www.fileformat.info/tip/java/simpledateformat.html以进行验证,但看起来上面的格式是正确的。

附加上下文:此代码在Moshi适配器中执行,并在Android应用程序中运行:

class ZonedDateTimeAdapter {
private val formatter = DateTimeFormatter.ofPattern( "EEE MMM dd yyyy hh:mm a z", Locale.US )
@FromJson
fun fromJson(value: String): ZonedDateTime {
return ZonedDateTime.parse( value, formatter )
}
@ToJson
fun toJson(value: ZonedDateTime): String {
return value.toString()
}
}

你这样试过吗?

String s = "Sat Sep 19 2020 07:14 AM PDT";
ZonedDateTime z = ZonedDateTime.parse(s, DateTimeFormatter.ofPattern(
"EEE MMM dd yyyy hh:mm a z"));
System.out.println(z);

打印

2020-09-19T07:14-07:00[America/Los_Angeles]

相关内容

  • 没有找到相关文章

最新更新