31

How do a I take an input birthday string such as 02 26 1991 and make it into a Gregorian Calendar?

I tried parsing it first but it keeps giving me an error message so I'm not quite sure what I'm doing wrong. I also have other input data before this date. One is another string and one is a double value.

Kat
  • 678
  • 2
  • 11
  • 23
  • Possible duplicate of [How to convert a date String to a Date or Calendar object?](http://stackoverflow.com/questions/43802/how-to-convert-a-date-string-to-a-date-or-calendar-object) – Twonky Apr 12 '17 at 07:32

2 Answers2

42

Use SimpleDateFormat to parse the date and then assign it to a Calendar.

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

The third line could be replaced with:

Calendar cal = new GregorianCalendar();

but I prefer the first version.

cletus
  • 616,129
  • 168
  • 910
  • 942
1

Use a DateFormat as shown here:

Example:

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

Use the parse() method of the SimpleDateFormat class. You can use setLenient(false) to force strict parsing.

kenorb
  • 155,785
  • 88
  • 678
  • 743
objects
  • 8,637
  • 4
  • 30
  • 38