android中的datepicker - 将月和日作为MM -DD

时间:2013-01-07 10:33:45

标签: android datepicker date-format getdate

我正在开发一个使用datepicker的Android应用程序。当我使用时:

request.addProperty("datetext",datePicker.getYear()+"-"+(datePicker.getMonth()+1)+"-"+datePicker.getDayOfMonth());

2013年1月7日 2013年7月

我的输出为2013-1-7

但是我怎么能得到同样的输出作为2013-01-07。

3 个答案:

答案 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);