2016-04-07 21 views
-3
SimpleDateFormat formatter1;   
formatter1 = new SimpleDateFormat("dd-MMM-YYYY"); 
java.util.Date dt = formatter1.parse(t5.getText()); 
java.sql.Date sqlDate = new java.sql.Date(dt.getTime()); 
JOptionPane.showMessageDialog(null,cid); 
JOptionPane.showMessageDialog(null,bid); 
JOptionPane.showMessageDialog(null,t1.getText()); 
JOptionPane.showMessageDialog(null,""+sqlDate); 

我在打印sqlDate时得到不同的日期。当我给出2016年4月7日的投入时,我会在2015年12月27日收到sqldate的价值。格式为“07-apr-2016”的Java日期字符串在转换为sqldate时产生错误结果

回答

2

oracle docs,Y表示一周以来,y表示一年

更改代码formatter1 = new SimpleDateFormat("dd-MMM-YYYY");formatter1 = new SimpleDateFormat("dd-MMM-yyyy");

2

你的模式不正确,正确的是dd-MMM-yyyydd-MMM-YYYY

相关问题