gpt4 book ai didi

android - Android 5.0 上的 Jodatime 问题

转载 作者:搜寻专家 更新时间:2023-11-01 08:45:56 24 4
gpt4 key购买 nike

我的应用程序已经运行了一段时间,但在 Android 5.0 发布后,它在运行该版本的设备上崩溃了。我正在使用 JodaTime 2.6 进行日期处理,正是这个库突然抛出了以下异常:

java.lang.IllegalArgumentException:无效格式:“6:06:00 AM”在“AM”处格式错误

我已验证我尝试解析的相应字符串具有正确的格式。

更新(这里是失败的代码)

 private void doSomething(DateTime time, String timeToParse,int day, int month) {
DateTimeFormatter fmt = DateTimeFormat.forPattern("h:mm:ss a");
//Fails here:
LocalTime timeFromString = LocalTime.parse(timeToParse,fmt);
}

有人遇到过类似的问题吗?

最佳答案

这可能是一个本地化问题。看来您的默认本地不知道“AM”字符串,而是其他东西。

Joda-Time 只是委托(delegate)给底层的 JVM 资源,在您的情况下委托(delegate)给可能不同的 Android 资源。为此,Joda-Time 最后使用了类 DateFormatSymbols。请检查您的语言环境和 getAmPmStrings() 的输出进行正确的诊断。

根据诊断结果,要么使用 LocalTime.parse(timeToParse, fmt.withLocale(Locale locale)); 显式设置语言环境,要么使用合适的字符串输入形式预处理。

关于android - Android 5.0 上的 Jodatime 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28286732/

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