FULL PRODUCT VERSION :
java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-b03)
Java HotSpot(TM) Client VM (build 1.5.0_07-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]
A DESCRIPTION OF THE PROBLEM :
SimpleDateFormat.format(Date) with pattern "y" prints 07 instead of 7.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
SimpleDateFormat sdf = new SimpleDateFormat();
sdf.applyPattern("y");
System.out.println(sdf.format(new Date()));
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.text.SimpleDateFormat;
import java.util.Date;
public class SDFTest
{
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat();
String format = "y";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yyy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yyyy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yyyyy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
}
}
---------- END SOURCE ----------
java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-b03)
Java HotSpot(TM) Client VM (build 1.5.0_07-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]
A DESCRIPTION OF THE PROBLEM :
SimpleDateFormat.format(Date) with pattern "y" prints 07 instead of 7.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
SimpleDateFormat sdf = new SimpleDateFormat();
sdf.applyPattern("y");
System.out.println(sdf.format(new Date()));
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.text.SimpleDateFormat;
import java.util.Date;
public class SDFTest
{
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat();
String format = "y";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yyy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yyyy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
format = "yyyyy";
sdf.applyPattern(format);
System.out.println("format=" + format + "\t" + sdf.format(date));
}
}
---------- END SOURCE ----------
- duplicates
-
JDK-6609635 SimpleDateFormat year patterns don't behave as in documentation
-
- Closed
-
- relates to
-
JDK-4358730 SimpleDateFormat: doc/implementation inconsistent for number of digits for year
-
- Resolved
-
-
JDK-6910031 DateFormat tests fail due to the fix for 6609750
-
- Resolved
-