62,615
社区成员
发帖
与我相关
我的任务
分享
SimpleDateFormat sf=new SimpleDateFormat("hh:mm:ss");
java.sql.Date date =new java.sql.Date(0);
date.setYear(114);
date.setMonth(3);
date.setDate(16);
SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd");
System.out.println("sqlDate:\t"+date);
System.out.println("formate的时间:\t"+sf.format(date));
这里注意一下,setYear是在1900的基础上再加那么多,所以要设置成2014参数是114,而setMonth是在1的基础上加,所以要4月的话参数是3,而date的话,是在0的基础上加,所以是哪天就是哪天了,如果你要显示前一天的话,如
date.setYear(0);
date.setMonth(0);
date.setDate(0);
这个代码的结果就是1899-12-31
另外,你显示时分秒是因为你的SimpleDateFormat 就这么格式化的。[/quote]
那也是00:00:00,为啥是12:00:00,或者是其他时间? java.sql.Date date =new java.sql.Date(0);
date.setYear(114);
date.setMonth(3);
date.setDate(16);
SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd");
System.out.println("sqlDate:\t"+date);
System.out.println("formate的时间:\t"+sf.format(date));
这里注意一下,setYear是在1900的基础上再加那么多,所以要设置成2014参数是114,而setMonth是在1的基础上加,所以要4月的话参数是3,而date的话,是在0的基础上加,所以是哪天就是哪天了,如果你要显示前一天的话,如
date.setYear(0);
date.setMonth(0);
date.setDate(0);
这个代码的结果就是1899-12-31
另外,你显示时分秒是因为你的SimpleDateFormat 就这么格式化的。