2013-10-09 2 views
0

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

String a = request.getParameter("bdate"); 
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(yyyy-MM-dd); 

Date bdate = simpleDateFormat.parse(a); 
System.out.println(bdate); 

Но я получаю Вт Янв 01 00:00:00 PST 1970, в то время как я хочу отформатировать дату в yyyy-MM-dd

+1

какое значение входит в var 'a' по параметру ввода "bdate" ?? –

+0

Преобразование строки на дату, а затем обратно в строку. Это избыточно, если формат двух строк не отличается. –

+0

ITS 1970-01-01 ..... – user2862813

ответ

0

Вам необходимо использовать SimpleDateFormat#format(). Форматировщик должен использоваться как при разборе , так и в печати даты. В противном случае используется формат EEE MMM dd HH:mm:ss zzz yyyy по умолчанию, который исходит от java.util.Date#toString().

Date bdate = simpleDateFormat.parse(a); 
System.out.println(simpleDateFormat.format(bdate)); 
2

Если вы хотите записать его в нужном формате записи:

System.out.println(simpleDateFormat.format(bdate)); 

java.util.Dateне нести информацию о формате

1

использование new SimpleDateFormat("yyyy-MM-dd");, но когда вы хотите вернуть отформатированный дату использование simplDateFormat.format(parsedDate)

0

чт 1 января 00:00:00 PST 1970

является Unix-Time 0. Это, скорее всего, означает, что вы «а» пуста или плохо отформатирован. Проверьте ввод параметров; ваш синтаксический код в порядке.

Смежные вопросы