我正在开发一个使用datepicker的Android应用程序。当我使用时:
request.addProperty("datetext",datePicker.getYear()+"-"+(datePicker.getMonth()+1)+"-"+datePicker.getDayOfMonth());
2013年1月7日 2013年7月
我的输出为2013-1-7但是我怎么能得到同样的输出作为2013-01-07。
答案 0 :(得分:4)
感谢所有......我得到了解决方案......
Integer month = datePicker.getMonth()+1;
Integer day = datePicker.getDayOfMonth();
request.addProperty("datetext",datePicker.getYear()+"-"+((month.toString().length() == 1 ? "0"+month.toString():month.toString()) )+"-"+((day.toString().length() == 1 ? "0"+day.toString():day.toString())));
所以这将显示月为 01 02 03 04 .... 10 11 12 和天为 01 02 03 .... 10 11 .......
答案 1 :(得分:1)
Date yourDate= new Date(datePicker.getYear(), (datePicker.getMonth()+1), datePicker.getDayOfMonth());
您可以使用SimpleDateFromat
,如下所示:
String strDate = null;
SimpleDateFormat dateFormatter = new SimpleDateFormat(
"yyyy-MM-dd hh:mm");
strDate = dateFormatter.format(yourDate);
因此,您将获得所需格式的日期(yyyy-MM-dd)。
编辑:
如果要更改datepicker中的日期,您可以尝试如下:
datePicker.init(currentYear, currentMonth, currentDay, new OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
// TODO Auto-generated method stub
Date selectedDate = new Date(datePicker.getYear(), (datePicker
.getMonth() + 1), datePicker.getDayOfMonth());
String strDate = null;
SimpleDateFormat dateFormatter = new SimpleDateFormat(
"yyyy-MM-dd hh:mm");
strDate = dateFormatter.format(selectedDate);
}
});
因此,您会在日期选择器发生更改时找到更新日期。
答案 2 :(得分:0)
SimpleDateFormat form = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
java.util.Date date = null;
try
{
date = form.parse("2013-01-7T09:39:01.607");
}
catch (ParseException e)
{
e.printStackTrace();
}
SimpleDateFormat postFormater = new SimpleDateFormat("yyyy-MM-dd");
String newDateStr = postFormater.format(date);