порядок по дате в примере базы данных sqlite в Android 2.0.3 - PullRequest
0 голосов
/ 15 февраля 2012

В Android 2.0.3 я хочу предложить, как сделать мои данные курсора в порядке убывания. Я знаю, в sqlite даты хранятся в тексте, но я получил курсор и проанализировать дату, но я не могу отсортировать их по убываниюпорядок .. нужна помощь .. это мой код, если некоторые могут помочь

int cnt = rs_inc.getCount ();

                String d[]=null;
                SimpleDateFormat formatter ; 
             Date date1 = null,date2 = null ; 
              formatter = new SimpleDateFormat("dd-mm-yy");
             boolean swap = true;
                    while(swap)
                    {
                        swap = false;           
                        for(int i =1; i < cnt; i++) 
                        {
                        d[i]=rs_inc.getString(2);
                         try {
                                date1 = (Date)formatter.parse(rs_inc.getString(2));
                                }catch(Exception e){}
                                rs_inc.moveToNext();
                                if(rs_inc.isAfterLast()){
                                    rs_inc.moveToPrevious();
                                }

                                d[i+1]=rs_inc.getString(2);
                         try {
                                date2 = (Date)formatter.parse(rs_inc.getString(2));
                                }catch(Exception e){}
                            if(date1.before(date2))     
                            {
                                swap = true;    
                                String temp = d[i];     
                                d[i] = d[i + 1];    
                                d[i + 1] = temp;        
                            }
                        }
                    }

1 Ответ

5 голосов
/ 15 февраля 2012

Похоже, вы используете неправильный формат даты.

Чтобы выполнить сортировку по DATETIME в SQLite, вам нужно использовать правильный формат даты, как показано ниже:

DateFormat dateFormatISO8601 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...