我想在我的活动中获取日期并显示 我今天做了这个代码但是工作错误
private int mYear;
private int mMonth;
private int mDay;
String Date
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
Date = mDay + "-" + mMonth + "-" + mYear;
它发送18-11-2012
这是错的
但令我困惑的是,为什么月份显示11即使月份是12
怎么了?
答案 0 :(得分:0)
c.get(Calendar.MONTH);
返回月份的索引(即1月份为0)。所以没有错,那就是API ......
修改强>
String date = mDay + "-" + (mMonth+1) + "-" + mYear;
将正确显示日期。
请注意,Java API提供DateFormat API以各种格式显示日期(取决于用户的语言环境)。使用它通常是更好的选择。
答案 1 :(得分:0)
在Java中,mounths从0开始
答案 2 :(得分:0)
这是一种方法,使用Calendar和SimpleDateFormat可以根据需要轻松格式化输出。
Calendar myCalendar = new GregorianCalendar();
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy", Locale.getDefault());
formatter.setCalendar(myCalendar);
String dateString = formatter.format(myCalendar.getTime());
输出:
19-12-2012