So I am trying to take a Date object and convert it into a calendar for
use in my application, the code looks like: The string _s comes in in
the format YYYY-MM-DD this i am 100% sure of
public CalendarInfo(String _s) {
DateFormat _formatter = new SimpleDateFormat("yyyy-MM-dd");
try {
_date = _formatter.parse(_s);
_calendar = new GregorianCalendar();
_calendar.clear();
_calendar.setTime(_date);
_log.log_error(_class, "CalendarInfo():
"+_calendar.toString());
_log.log_warning(_class, ""+_calendar.YEAR);
_log.log_warning(_class, ""+_calendar.MONTH);
_log.log_warning(_class,
""+_calendar.DAY_OF_MONTH);
}
catch (java.text.ParseException Ex) {
_log.log_error(_class, "CalendarInfo(): Bad Parse: "+Ex);
}
}
So what i am doing is passing in a string formatted as "2006-10-12" and
converting it to a calendar and this is the results i get:
[ 10-17-2006 15:11:41 Calendar.CalendarInfo ] ERROR: CalendarInfo():
java.util.GregorianCalendar[time=1160625600000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="America/New_York",offset=-18000000,dstSavings=3600000,useDaylight=true,transitions=235,lastRule=java.util.SimpleTimeZone[id=America/New_York,offset=-18000000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=2,startDay=8,startDayOfWeek=1,startTime=7200000,startTimeMode=0,endMode=3,endMonth=10,endDay=1,endDayOfWeek=1,endTime=7200000,endTimeMode=0]],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2006,MONTH=9,WEEK_OF_YEAR=41,WEEK_OF_MONTH=2,DAY_OF_MONTH=12,DAY_OF_YEAR=285,DAY_OF_WEEK=5,DAY_OF_WEEK_IN_MONTH=2,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=-18000000,DST_OFFSET=3600000]
[ 10-17-2006 15:11:41 Calendar.CalendarInfo ] WARNING: 5
[ 10-17-2006 15:11:41 Calendar.CalendarInfo ] WARNING: 2
[ 10-17-2006 15:11:41 Calendar.CalendarInfo ] WARNING: 1
as you can see from the _calendar.toString() call, it clearly shows the
object year=2006, month=9, day=12
but when i call the direct Calendar.YEAR/MONTH/DAY_OF_MONTH i get
these weird results.
what is up with that? anyone have any clue? Thanks!
Andreas Wollschlaeger - 17 Oct 2006 20:54 GMT
> So I am trying to take a Date object and convert it into a calendar for
> use in my application, the code looks like: The string _s comes in in
[quoted text clipped - 34 lines]
>
> what is up with that? anyone have any clue? Thanks!
RTFM :-) - try calendar.get(Calendar.YEAR) et al.
Admittely, this is one of Suns more bizarre APIS, so this is easy to
dismiss for first time users...
HTH
Andreas
adam.balgach@gmail.com - 17 Oct 2006 21:02 GMT
thanks!
never thought to try that.
> > So I am trying to take a Date object and convert it into a calendar for
> > use in my application, the code looks like: The string _s comes in in
[quoted text clipped - 41 lines]
> HTH
> Andreas
Daniel Dyer - 17 Oct 2006 21:05 GMT
> RTFM :-) - try calendar.get(Calendar.YEAR) et al.
> Admittely, this is one of Suns more bizarre APIS, so this is easy to
> dismiss for first time users...
I believe we have IBM to thank for this particular contribution to the
standard libraries.
Dan.

Signature
Daniel Dyer
http://www.uncommons.org
Tom Forsmo - 18 Oct 2006 01:57 GMT
>> RTFM :-) - try calendar.get(Calendar.YEAR) et al.
>> Admittely, this is one of Suns more bizarre APIS, so this is easy to
>> dismiss for first time users...
>
> I believe we have IBM to thank for this particular contribution to the
> standard libraries.
I hate dates and calendars in Java. I remember having to deal with dates
and calendars on a project a few months ago. I almost never work with
dates, so I didn't remember much about it. I had to go back to the java
book and read up on it because the api is really badly designed. And
even then it took me some extra time to actually get it working correctly.
tom