проблема в работе над датой - PullRequest
0 голосов
/ 25 августа 2011
I want to convert String to date object I used this code to convert

  try{

            SimpleDateFormat parse = new SimpleDateFormat("yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'");
            SimpleDateFormat formatter = new SimpleDateFormat("yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'");
            String dateTime = "1996-10-7T4:50:00Z";
        Date parsed = parse.parse(dateTime);
            System.out.println("formatted: " + formatter.format(parsed));
            }
            catch(ParseException e){
            System.out.println("Caught " + e);
            }

output:



I need value of date object to be **1996-10-7T4:50:00Z** as it as the given string.

но код, указанный выше, создает объект даты: понедельник, окт. 07 04:50:00 PDT 1996

Ответы [ 4 ]

2 голосов
/ 25 августа 2011

Попробуйте так:

        DateFormat formatter = new SimpleDateFormat("yyyy-MM-ddTHH:mm:ssZ");

Используйте один и тот же объект для разбора и форматирования.

1 голос
/ 25 августа 2011

Ваш объект Date не отформатирован сам по себе. Форматер делает свою работу. Когда я запускаю ваш код, я получаю:

formatted: 1996-10-07T04:50:00Z

Что хорошо.

РЕДАКТИРОВАТЬ : кстати duffymo справа, ниже: вам не нужно иметь два разных форматера.

1 голос
/ 25 августа 2011

Когда я запустил вышеуказанный код, я получил такой вывод:

отформатировано: 1996-10-07T04: 50: 00Z

1 голос
/ 25 августа 2011

Посмотрите на это, вы точно получите ответ,

SimpleDateFormat

...