问题标签 [android-jodatime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Android转换日期时间解析错误(甚至尝试过joda时间)
我正在解析许多新闻提要,并且每个项目的 pubDate 都遵循相同的格式:
2017 年 6 月 11 日星期日 18:18:23 +0000
不幸的是,一个提要没有:
2017 年 6 月 10 日星期六 12:49:45 EST
我尝试使用 androids java date 解析日期,但没有成功SimpleDateFormat
:
哪个抛出和错误:
java.text.ParseException:无法解析的日期:“星期六,2017 年 6 月 3 日 19:53:09 EST”(偏移量 26)
我也尝试过使用 joda time 来做到这一点:
这会引发错误:
原因:java.lang.IllegalArgumentException:无效格式:“星期六,2017 年 6 月 10 日 12:49:45 EST”在“EST”格式错误
有没有人遇到过这个?
android - 在 Firebase 上保存 Joda 日期
在 android 中存储 Joda 日期和时间的正确方法是什么?当我试图将它保存在 Firebase 上并得到致命异常时。这是我要保存的对象的类的片段,上面写着:“不支持序列化数组,请改用列表”
android - Android Joda Time 在 Android 上崩溃
我从堆栈跟踪中看到下一次崩溃:
这是进行转换的代码(它不完全是代码,因为它是 JSON 解析):
我试图在 JVM 上的测试中重现它,它不会崩溃。我还试图在模拟器上重现它,它也毫无例外地运行。
我是对的,这是特定的设备/版本错误吗?或者我只是在重现问题的代码中犯了一个错误。
来自异常的字符串是有效的 ISO 日期格式字符串吗?
date - 无法使用 JodaTime 解析日期
从昨天开始,我一直在尝试使用 JodaTime 解析一个简单的日期,但到目前为止我一直在失败.....
这是我要解析的(随机)日期:2017-Sept-14(即使大写的 S 也不会改变任何东西......)
这是我的代码
这是我的例外:
我在这里想念什么?
更新: 实际上我从我的文本字段中得到的是上面的形式,即日期-月-日(月份长 3 或 4 个字符,具体取决于月份....)所以当我有 2017 年时我想得到什么作为输出-sept-14 只是 2017-09-14
android - 乔达时间不工作
我是 android 新手,在使用 jodatime 时遇到了麻烦。我遇到了和这里很多人一样的错误,我已经尝试了所有的建议,但没有什么对我有用。我正在尝试将用户从日期和时间选择器(例如“dayNow、monthNow”等)中选择的变量显示到一个名为“timeselected”的组合变量中,并将其设置为文本框,这样我就可以在 jodatime 中进一步进行计算.
代码如下:
致命异常:主进程:com.almac.tracker,PID:29114 java.lang.IllegalArgumentException:无效格式:“2017-11-23 T 4:56”在 org.joda.time 的“T 4:56”格式错误.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:945) 在 org.joda.time.DateTime.parse(DateTime.java:160) 在 org.joda.time.DateTime.parse(DateTime.java:149) 在 com。 almac.tracker.CreateLine$5.onClick(CreateLine.java:274) 在 android.view.View.performClick(View.java:6219) 在 android.view.View$PerformClick.run(View.java:24482) 在 android.os.Handler.handleCallback(Handler.java:769) 在android.os.Handler.dispatchMessage(Handler.java:98) 在 android.os.Looper.loop(Looper.java:164) 在 android.app.ActivityThread.main(ActivityThread.java:6540) 在 java.lang.reflect .Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
android - 为什么从另一个方法调用 DateTime.withTime() 会导致 exceptionInInitializerError
这段代码直到几天前才有效。现在它不再适用于 android 版本 6.0。它确实适用于 7.0 及更高版本。
这是奇怪的事情,如果我将 withTime() 调用移动到直接调用而不是像这样的实用方法中:
然后代码工作,没有抛出异常。为什么?我怎样才能让它再次在实用程序方法中工作?
堆栈跟踪:
java - 如何在 Joda Time daysBetween 中包含开始日期?
在测试 JODA 时间以获得已选择的天数时,它不包括开始日期。
因此,如果我选择 12 月 14 日至 16 日,结果只会显示“2”而不是 3。
仅“+1”结果是否安全,或者在 JODA 时间内是否有正确的方法来做到这一点?
android - JodaTime 在“PM”解析格式错误-但仅在真实设备上(在本地测试中工作正常)
我正在使用 JodaTime 2.9.9:
implementation 'joda-time:joda-time:2.9.9'
我在本地 UnitTest ( test
) 和 Instrumented UnitTest ( androidTest
) 中解析相同的日期/时间字符串。
解析代码为:
- 在本地 UnitTest (
test
) - 测试通过:
FOO - str: '1/25/2018 5:03:12 PM' length: 20
FOO - prs: 2018-01-25T17:03:12.000Z
- 在 Instrumented UnitTest (
androidTest
) 上 - 测试失败:
java.lang.IllegalArgumentException: Invalid format: "1/25/2018 5:03:12 PM" is malformed at "PM"
at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:945)
为什么?
android - 使用英语以外的语言环境时,Joda Time 格式错误
我在 Android 中使用 Joda Time 2.9.9。当 Locale 设置为英语时,调用 likedatetime.monthOfYear().getAsText(locale)
并分别datetime.monthOfYear().getAsShortText(locale)
返回格式为 likeFebruary
和的字符串Feb
。
但是当语言环境是西班牙语(es)时,它会返回诸如february
和之类的字符串feb.
(实际值是西班牙语,我翻译了它们)。
在使用其他语言环境时,有什么方法可以使它返回格式良好的字符串,大写且不带点?
还有一个额外的问题:如果没有办法,子类化 datetime 类并格式化字符串是个好主意吗?
java - 在 Android 中使用 JodaTime 比较时间
我需要使用 Android 中的 JodaTime 库来比较 DateTime 对象是否大于/小于太平洋标准时间上午 9 点。我在 PST 中得到 DateTime 对象,如下所示:
如何比较为该对象记录的时间是否大于/小于太平洋标准时间上午 9 点?
谢谢。