我正在开发一个使用 datepicker 的 android 应用程序。当我使用:
request.addProperty("datetext",datePicker.getYear()+"-"+(datePicker.getMonth()+1)+"-"+datePicker.getDayOfMonth());
我得到的输出是2013 年 1 月 7 日的 2013-1-7
但是我怎样才能得到同样的输出 2013-01-07。
我正在开发一个使用 datepicker 的 android 应用程序。当我使用:
request.addProperty("datetext",datePicker.getYear()+"-"+(datePicker.getMonth()+1)+"-"+datePicker.getDayOfMonth());
我得到的输出是2013 年 1 月 7 日的 2013-1-7
但是我怎样才能得到同样的输出 2013-01-07。
谢谢大家...我得到了解决方案...
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....
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.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);
}
});
因此,您会在日期选择器更改时找到更新的日期。
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);