1

我想以这种格式显示日期字符串:Jun 27, 2012. 我这样做了:

SimpleDateFormat sdf = new SimpleDateFormat("MMM dd, yyy");
String date = sdf.format(Calendar.getInstance());

但它给了我这个:

java.lang.IllegalArgumentException: Cannot format given Object as a Date

我究竟做错了什么?

4

2 回答 2

10
sdf.format()

接受一个Date,而不是一个Calendar对象。

于 2012-06-27T14:56:41.637 回答
9

您不能使用Calendar.getInstance(),因为相同的参数是日期而不是日历实例。只需将参数更改为getTime()

SimpleDateFormat sdf = new SimpleDateFormat("MMM dd, yyyy");
String date = sdf.format(Calendar.getInstance().getTime());
于 2012-06-27T14:57:51.713 回答