Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
pavel-
0 / 0 / 0
Регистрация: 06.07.2016
Сообщений: 1
#1

Как преобразовать время из long в формат "ДД.ММ.ГГГГ"? - Программирование Android

25.07.2016, 20:15. Просмотров 366. Ответов 1
Метки нет (Все метки)

Добрый день. Заранее извиняюсь, если тема глупая, ибо новичок.

Я сохраняю дату в SQLite в формате long:

Java
1
2
3
4
5
private long presentTime() {
        d  = new Date();
        date = d.getTime();
        return date;
    }
затем
Java
1
dataBaseConnector.insertTime(tableName, 0, date);
В таблице SQLite она хранится в виде long (1469152841165).

Теперь эту дату нужно вывести в ListView в понятном для человека формате ДД.ММ.ГГГГ

В классе базы данных метод
Java
1
2
3
4
5
6
7
public DateCursor getAllNotesDate() {
        database = dataBaseOpenHelper.getWritableDatabase();
        Cursor wrapped = database.query(TABLE_NAME, new String[]{"_id", DATE}, null,
                null, null, null, null);
 
        return new DateCursor(wrapped);
    }

В activity:
Java
1
2
3
4
5
6
7
8
listView = getListView();
        String[] from = new String[]{"date"};
        int[] to = new int[]{R.id.textViewDate};
 
        cursorAdapter = new SimpleCursorAdapter(ListDetailActivity.this,
                R.layout.list_view_item, null, from, to, 0);
 
                setListAdapter(cursorAdapter);
Выводит дату в формате long.

В одном примере видел, что можно создать свой курсор (создал дополнительный объект RunDate, куда запихнул id и date),
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class RunDate {
 
    private String date;
    private long id;
 
    public RunDate(){
        id = -1;
        date = new String();
    }
 
    public String getDate() {
        return date;
    }
 
        public void setDate(String date) {
        this.date = date;
    }
 
    public long getId() {
        return id;
    }
 
    public void setId(long id) {
        this.id = id;
    }
 
    public static String formatDate(long milliseconds){
 
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MM yyyy");
        String dateCalend = simpleDateFormat.format(new Date(milliseconds));
 
        return dateCalend;
    }
}
но
результат так же выводится в long:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public static class DateCursor extends CursorWrapper {
 
        private DataBaseConnector dataBaseConnector;
        private SQLiteDatabase database;
 
        public DateCursor (Cursor cursor){
            super(cursor);
        }
 
        public RunDate getRunDate(){
            if (isBeforeFirst() || isAfterLast()) return null;
 
            RunDate runDate = new RunDate();
            long dateID = getLong(getColumnIndex("_id"));
            runDate.setId(dateID);
 
            long date = getLong(getColumnIndex(DATE));
            runDate.setDate(new Date(date));
            return runDate;
        }
    }
Каким способом можно преобразовать long в дату?
В документации SQLite нашел пример: SELECT datetime(1092941466, 'unixepoch');, но как его применить к моему случаю?
Вообще, подобная операция довольно типична и, наверное, есть какой-то универсальный метод преобразования long в date без лишних костылей, но я такого мануала не нашел. Если есть ссылка с подобным примером, то прошу поделиться.
Буду благодарен любой помощи, спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.07.2016, 20:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как преобразовать время из long в формат "ДД.ММ.ГГГГ"? (Программирование Android):

Как прикрутить "свой браузер" к странице - "фрагмент" - Программирование Android
здравствуйте. все, уже голову сломал. не соображаю совсем. не получается прикрутить код браузера к странице fragments.выводиться должно на-...

Как "превратить" string "6.971245e-001" во float? - Программирование Android
Число конечно пример

Работа с БД, связывание таблиц "фильмы", "жанры", "режиссеры" - Программирование Android
Ребят, всем привет! накидайте какие-нить идеи по реализации ситуация такая есть таблицы - "списки_жанров", "фильмы", "режиссеры" мне...

Ошибка "Unknown method "e" of "org.apache.commons.logging.Log" - Программирование Android
Unknown method 'e' of 'org.apache.commons.logging.Log' package com.mycompany.myapp; import android.widget.*; import...

Постепенно вывести на экран слово "Java", в котором буквы состоят из "интересных" элементов - Программирование Android
Я учусь в универе и вот пытаюсь делать лабораторные по языку java, только на свой телефон с помощью android studio )) До этого все...

Выбор платформы разработки "1С Мобильная платформа" или "Android Studio" - Программирование Android
Всем, здравствуйте! Есть задача по разработке клиента для терминала сбора данных. Для использования его c WMS. После долгих раздумий было...

1
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
25.07.2016, 20:44 #2
Почитай про simpleDataFormat

Добавлено через 5 минут
Java
1
2
SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy"); 
String sDate = sdf.format(longDate);
3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.07.2016, 20:44
Привет! Вот еще темы с ответами:

При эмулировании вместо надписи "Hello world" отображается "android" - Программирование Android
Привет форумчане! Я только-только начинал программировать на андроиде. Поставил среду, все настроил как на google.developers . Когда...

Что означают конструкции "finally" и "throw new"? - Программирование Android
Я с Java уже давно, но с этим столкнулся в первый раз. Объясните, пожалуйста, что означают вот это "finally" и "throw new". Вот пример...

блокирование кнопок "Home" "Back" - Программирование Android
Доброго времени. собственно вопрос сл. можно ли заблокировать или каким либо образом отключить возможность нажатия пользования кнопок...

Визуализация нажатия на изображение. Как поставить картинку на "нажатие" - Программирование Android
У меня картинка выступает в качестве кнопки, на ней стоит изображение, как сделать что бы оно поменялось на другое при нажатии(как кнопка)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru