首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

[200分]为何java.util.Date类型的值,打出来的总是Tue Oct 10 20:22:10 CST 2006

2011-12-11 
[200分]为什么java.util.Date类型的值,打出来的总是Tue Oct 10 20:22:10 CST 2006Stringdatevalue 2006-

[200分]为什么java.util.Date类型的值,打出来的总是Tue Oct 10 20:22:10 CST 2006
String   datevalue= "2006-10-10   20:22:10.0 ";
      SimpleDateFormat   formater   =   new   SimpleDateFormat( "yyyy-MM-dd   HH:mm:ss ");
                  try   {
Date   d=formater.parse(datevalue);
System.out.println(d);
}   catch   (ParseException   e)   {                                             e.printStackTrace();
}
为什么打出来的还是Tue   Oct   10   20:22:10   CST   2006
而不是:2006-10-10   20:22:10
如何能让、Date   d=formater.parse(datevalue);
System.out.println(d);
打出的是2006-10-10   20:22:10


[解决办法]
你没有用DateFormat类啊,应该是:

String datevalue = "2006-10-10 20:22:10.0 ";
SimpleDateFormat formater = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss ");
try {
Date d = formater.parse(datevalue);
System.out.println(formater.format(d));
} catch (ParseException e) {
e.printStackTrace();
}

[解决办法]
Date d=formater.parse(datevalue);
System.out.println(d);
直接打印Date类对象d,会默认调用d.toString();方法,而此方法打印格式就是:
Tue Oct 10 20:22:10 CST 2006
要打印你需要的格式应该:
System.out.println(formater.format(d));
[解决办法]
楼主没有使用format()方法进行格式化,parse()只是构造一个date实例,但是这个实例不是你想要的格式化的,想要格式化的需要format()来执行,就像楼上说的。

热点排行