从SimpleDateFormat更正我的日期输出

我遇到了问题:尝试使用SimpleDateFormat和用户输入…

public static void main(String[] args) { try { SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/YYYY",Locale.US); sdf.setLenient(false); Scanner myScanner = new Scanner(System.in); String myDate; out.print("Please enter today's date [MM/DD/YYYY]: "); myDate = myScanner.next(); Date date = sdf.parse(myDate); out.println("Today is : " + date); } catch (ParseException e) { e.printStackTrace(); } } 

结果如下:

 Please enter today's date [MM/DD/YYYY]: 09/21/2008 Today is : Sun Dec 30 00:00:00 EST 2007 

你应该使用小y – MM / dd / yyyy。

在处理日期格式问题时,此链接应该是您的朋友。

new SimpleDateFormat("MM/dd/YYYY",Locale.US); 必须是new SimpleDateFormat("MM/dd/yyyy",Locale.US);

  • YYYY =周年
  • yyyy =年份