Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > String to Date


Автор: carn 3.6.2012, 14:48
Всем доброго времени суток!
Люди, помогите, пожалуйста, преобразовать String в Date.
У меня с формы отправляется дата и время в виде строки, а в контроллере она маппиться на Date. Из-за несовпадения форматов выдаёт:
Could not parse date: Unparseable date: "2012-06-20T12:00Z"
Кто-нибудь знает как мне такую строку записать в Date?
Заранее спасибо!

Добавлено @ 15:02
Хотя бы скажите какой мне формат сделать?
 для такой строки "2012-06-20T12:00Z"

этот не работает new SimpleDateFormat("yyyy-MM-dd HH:mm z"); записывает всегда текущую дату.
Считываю, кстати, с формы <input type="datetime">

Автор: Pawl 3.6.2012, 15:45
Код

import java.util.Calendar;
import java.util.Date;

public class StringToDate {
    public static void main(String[] args) {     
     Calendar c = Calendar.getInstance();
        String [] sData = ("2012-06-20T12:00Z").split("[^\\d]+");
        int [] iData = new int[sData.length];
        for (int i = 0; i < sData.length; i++) {
         iData[i] = Integer.parseInt(sData[i]);
        }
        
        c.set(iData[0], iData[1], iData[2], iData[3], iData[4]);
        Date data = c.getTime();
    }
}

Автор: carn 3.6.2012, 16:04
Цитата(Pawl @ 3.6.2012,  15:45)
Код

import java.util.Calendar;
import java.util.Date;

public class StringToDate {
    public static void main(String[] args) {     
     Calendar c = Calendar.getInstance();
        String [] sData = ("2012-06-20T12:00Z").split("[^\\d]+");
        int [] iData = new int[sData.length];
        for (int i = 0; i < sData.length; i++) {
         iData[i] = Integer.parseInt(sData[i]);
        }
        
        c.set(iData[0], iData[1], iData[2], iData[3], iData[4]);
        Date data = c.getTime();
    }
}

Работает!
Спасибо дружище!
Очень помог, удачи тебе!

Автор: Pawl 3.6.2012, 16:15
Цитата(carn @  3.6.2012,  16:04 Найти цитируемый пост)
Работает!Спасибо дружище!Очень помог, удачи тебе!

Спасибо мало, плюса хватит smile 

Автор: carn 3.6.2012, 17:11
мне ещё 40 постов надо, чтоб плюсы можно было ставить =(

Автор: Pawl 3.6.2012, 17:21
Цитата(carn @  3.6.2012,  17:11 Найти цитируемый пост)
мне ещё 40 постов надо, чтоб плюсы можно было ставить

ладно, сочтемся! smile И не забывай закрывать темы, если они решены.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)