格式化后的简单日期格式显示月份为30而不是正确的月份

时间:2015-03-05 09:29:05

标签: java date simpledateformat

我的日期对象为" valueDate" " Wed May 08 05:30:00 IST 2013"在java.I我正在使用" yyyy-mm-dd"的simpleDateFormat。格式化。但格式化后我得到结果为" 2013-30-08"相反" 2013-05-08"。我做错了什么。任何人都可以帮助我吗?

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd");                   

String formattedValue= dateFormat.format(valueDate);

2 个答案:

答案 0 :(得分:2)

你必须使用大写' M'月份:

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 

正如您在documentation

中所看到的

m代表分钟 M代表月份

答案 1 :(得分:1)

dateformat区分大小写。 mm表示分钟,尝试MM

http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html