2016-04-25 230 views
0
import java.text.ParseException; 
import java.text.SimpleDateFormat; 
import java.util.Date; 


public class Test { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 
     SimpleDateFormat formatter = new SimpleDateFormat("yyyy-mm-dd"); 
     String dateInString = "2016-04-23"; 

     try { 

      Date date = formatter.parse(dateInString); 
      java.sql.Date sqlDate = new java.sql.Date(date.getTime()); 
      System.out.println("Date: -- "+date); 
      System.out.println("FormatterDate : -- "+formatter.format(date)); 
      System.out.println("SQLDATE : -- "+sqlDate); 
     } catch (ParseException e) { 
      e.printStackTrace(); 
     } 

    } 

} 

輸出:不正確的輸出

Date: -- Sat Jan 23 00:04:00 CST 2016 
FormatterDate : -- 2016-04-23 
SQLDATE : -- 2016-01-23 

我放出來應該是2016年4月23日不是2016年1月23日

+0

從[JavaDoc中]的javadoc(http://docs.oracle.com/javase/8/docs/api/java/text /SimpleDateFormat.html)*「m |小時分|數| 30」* – MadProgrammer

回答

1

m Minute in hour 

你想

M Month in year 
1

請注意,mm表示分而不是月。對於一個月,您必須改用MM