我正在尝试将当前日期与输入日期进行比较,并以“ EEE MMM dd HH:mm:ss zzz yyyy”格式接收]
这段代码在我的输入字符串为Wed Apr 01 09:00:00 GMT 2020
时有效,但在其Wed Apr 01 09:00:00 BST 2020
时无效。
DateTime currentTime =DateTime.now().withZone(DateTimeZone.forID("Europe/London")); DateTimeFormatter fmt = DateTimeFormat.forPattern("EEE MMM dd HH:mm:ss zzz yyyy"); DateTime inputDateTime = fmt.parseDateTime("Wed Apr 01 09:00:00 BST 2020"); if (inputDateTime.isBefore(currentTime)) Log.d(TAG, "if "); else Log.d(TAG, "else ");
关于我在做什么错的任何想法?另外,请随时建议是否有更好的方法(由于我们支持android API 19+,因此不能使用新的Java日期和时间库)
我正在尝试将当前日期与输入日期进行比较,格式为“ EEE MMM dd HH:mm:ss zzz yyyy”。当我的输入字符串为Wed Apr 01 09:00:00 GMT时,这段代码有效2020,但没有...
[Docs提到无法在joda Time zone names
中解析DateTimeFormat,因为时区缩写不明确,并且解析器无法确切知道它是哪个时区
我不确定这是否满足您对Andriod API 19+的要求,但这是使用SimpleDateFormatter进行日期格式的内容
LocalDate date = LocalDate.now();
String text = date.format(fmt);
LocalDate parsedDate = LocalDate.parse(text, formatter);