J# java.util.Calendar bug????????
From: burtr (dhickey_at_gmail.com)
Date: 02/23/05
- Next message: mela mela via DotNetMonster.com: "About JBC1.1b"
- Previous message: BillHouse: "How to Create HTTPS Connection From J#"
- Next in thread: Lars-Inge Tønnessen [VJ# MVP]: "Re: J# java.util.Calendar bug????????"
- Reply: Lars-Inge Tønnessen [VJ# MVP]: "Re: J# java.util.Calendar bug????????"
- Messages sorted by: [ date ] [ thread ]
Date: 23 Feb 2005 09:02:49 -0800
Hi,
I have a strange problem when adding a year to a 'leap' date. i.e.
2004/02/29 (yyyy/mm/dd) and wondering if anyone else has experienced
it. Basically J# code gives a different result than C# and Java. Check
out this code:
java.util.Calendar date = java.util.Calendar.getInstance();
date.set(2004, 1, 29, 0, 0, 0); //29th Feb 2004 - a leap day
date.add(java.util.Calendar.YEAR, 1);
System.out.println(date.getTime());
When I compile this under Sun's JDK 1.4.2_06 and execute it (I use
Eclipse platform for Java development), the output I get is:
Mon Feb 28 00:00:00 GMT 2005
When I compile in a J# console application using VS.Net I get:
Tue Mar 01 00:00:00 GMT+00:00 2005
The dates are different! Does anyone know why this could be the case?
To compare, C# code:
DateTime date = new DateTime(2004, 2, 29);
date = date.AddYears(1);
Console.WriteLine("c#: " + date.ToString());
gives:
2/28/2005 12:00:00 AM
which is the same value as the Java compiled output. So clearly this is
a J# problem. Or is it?
Any help or info would be greatly appreciated.
Thanks,
Burt.
- Next message: mela mela via DotNetMonster.com: "About JBC1.1b"
- Previous message: BillHouse: "How to Create HTTPS Connection From J#"
- Next in thread: Lars-Inge Tønnessen [VJ# MVP]: "Re: J# java.util.Calendar bug????????"
- Reply: Lars-Inge Tønnessen [VJ# MVP]: "Re: J# java.util.Calendar bug????????"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|