EEE MMM dd HH:mm:ss zzz yyyy给出了BST时区的parseException,但没有给出GMT的parseException(使用Joda时间DateTimeFormatter)

问题描述 投票:0回答:1

我正在尝试将当前日期与输入日期进行比较,并以“ 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日期和时间库)

java android date datetime-format android-jodatime
1个回答
0
投票

我不确定这是否满足您对Andriod API 19+的要求,但这是使用SimpleDateFormatter进行日期格式的内容

    String pattern = "EEEEE MMMMM yyyy HH:mm:ss";
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern);
    String date = simpleDateFormat.format(new Date());
    System.out.println(date);

希望这可以解决您的问题!

© www.soinside.com 2019 - 2024. All rights reserved.