Java格式化日期

Java格式化日期,java,date,simpledateformat,Java,Date,Simpledateformat,我试图获得当前日期和格式,但我得到一个无效的59个月。下面是代码 代码 import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; DateFormat df = new SimpleDateFormat("yyyy-mm-dd"); Date todayDate = new Date(); String formatDate = df.format(todayDate); 输

我试图获得当前日期和格式,但我得到一个无效的59个月。下面是代码

代码

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

DateFormat df = new SimpleDateFormat("yyyy-mm-dd");
Date todayDate = new Date();

String formatDate = df.format(todayDate);

输出为2013-59-07

您使用的
mm
表示分钟。改用大写字母
MM


您可以在上找到所有日期和时间模式符号。

月份由
MM
检索,而不是
MM
检索

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
请参阅JavaDoc:

一年中有多少个月


您需要使用大写字母
MM
,而不是
MM
。小写“mm”表示分钟,而不是月份

因此,您的代码是:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
您每月需要
“MM”
<代码>“mm”表示分钟


使用MM而不是MM。

59没有放弃吗?哈哈,是的,我在发布问题后决定更改它,现在我看到它真的是这样。谢谢,给人们他们的观点:)所以让我等待lol我会尽快接受一个
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
String dt = dateFormat.format(cal.getTime());