Преобразовать строку в GregorianCalendar - PullRequest
27 голосов
/ 25 февраля 2010

Как я могу взять входную строку дня рождения, такую ​​как 02 26 1991 и превратить ее в григорианский календарь?

Сначала я попытался разобрать его, но он продолжает выдавать мне сообщение об ошибке, поэтому я не совсем уверен, что я делаю неправильно. У меня также есть другие входные данные до этой даты. Одна - другая строка, а вторая - двойное значение.

Ответы [ 2 ]

33 голосов
/ 25 февраля 2010

Используйте SimpleDateFormat для анализа даты, а затем присвойте ее Calendar.

DateFormat df = new SimpleDateFormat("dd MM yyyy");
Date date = df.parse("02 26 1991");
Calendar cal = Calendar.getInstance();
cal.setTime(date);

Третья строка может быть заменена на:

Calendar cal = new GregorianCalendar();

но я предпочитаю первую версию.

1 голос
/ 25 февраля 2010

Используйте DateFormat, как показано здесь :

Пример:

DateFormat dateFormat = new SimpleDateFormat("hh:mm dd/MM/yy");
dateFormat.setLenient(false);
Date d = dateFormat.parse("06:23 01/05/06");

Используйте метод parse () класса SimpleDateFormat. Вы можете использовать setLenient (false) для принудительного строгого анализа.

...