24-часовые часы не работают в формате даты android - PullRequest
8 голосов
/ 22 апреля 2011

Я сделал заявление, в котором мне нужно выполнить преобразование даты в 24-часовом формате.Вот мой код.

GregorianCalendar c = new GregorianCalendar(Locale.GERMANY);
            c.set(2011, 04, 29,0,0,0);
            String cdate = (String) DateFormat.format("yyyy-MM-dd HH:mm:ss", c.getTime());
            Log.i(tag,cdate);

Теперь, когда я проверяю свой журнал, вот вывод:

04-22 12: 44: 15.956: INFO / GridCellAdapter (30248): 2011-04-29 ЧЧ: 00: 00

почему поле часа не устанавливается.Я явно передал 0, когда я делал объект календаря, тем не менее, он отображает HH в журнале.я пробовал, передавая hh, это устанавливается, но HH не устанавливается.

в чем может быть проблема?

спасибо заранее.

Ответы [ 3 ]

15 голосов
/ 15 февраля 2012
String cdate = (String) DateFormat.format("yyyy-MM-dd kk:mm:ss", c.getTime());
10 голосов
/ 22 апреля 2011

Попробуйте использовать SimpleDateFormat , подкласс DateFormat.Это может исправить проблемы, которые у вас есть.

например, для печати текущей даты и времени

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd_H-mm-ss",Locale.US);
String formattedDateString = dateFormat.format(new java.util.Date());
// result is something like "2013-02-14_18-44-15"
1 голос
/ 17 августа 2011

Попробуйте это

Long someLongDate = 240000L 
// I was working with a Long in my own code. 
// I'm sure you can use something like varDate.getLong()
TextView textView = (TextView) view;                 // your view of interest
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");     
textView.setText(sdf.format(new Date(someLongDate)));

Если это помогло - не забудьте проверить мой пост в качестве ответа ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...