簡體   English   中英

DateFormat format.parse解析異常:無法解析的日期

[英]DateFormat format.parse parse exception: Unparseable date

我正在開發一個android應用程序,並且在一項活動中,我根據對象的日期對對象列表進行排序。

我遇到的問題是,對於德國語言環境,對象列表正在按降序排序。

  • 如果語言環境設置為English(UK),則列表按升序排序。
  • 如果語言環境設置為German(Deutschland),則列表按降序排序。

為了對列表進行排序,我使用以下方法:

           Collections.sort(list, new Comparator<Object>() {
                @Override
                public int compare(MyPOJO obj1, MyPOJO obj2) {
                    DateFormat format = new SimpleDateFormat("EE MMM dd HH:mm:ss z yyyy");
                    Date date1, date2;

                    try {
                        date1 = format.parse(obj1.getPubDate());
                        date2 = format.parse(obj2.getPubDate());

                        return date1.compareTo(date2);
                    } catch (ParseException e) {
                        e.printStackTrace();
                    }

                    return 0;
                }
            });  

對於英語,對於對象,我具有以下日期格式:2015年8月13日星期四14:50:02

對於德語,則為以下內容:2015年8月13日星期四14:50:02

您是否知道此行為的根本原因,也許是解決此問題的方法?

使用字符串編碼數據是一種代碼味道(稱為“原始痴迷”

更改getPubDate()以返回Joda DateTime並將其表示為自數據存儲中的紀元以來的getPubDate()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM