0

有谁知道格式化从 dateTime 选择器返回的日期的方法?

以下是 2012 年 1 月 1 日返回我需要 2012 年 1 月 1 日任何帮助将不胜感激

我目前有以下设置日期

date2.setText(new StringBuilder()
    .append(mDay).append(mMonth + 1)
    .append(mYear));
4

4 回答 4

2

我建议使用SimpleDateFormatter。而且,由于DatePicker返回日、月、年的整数值,您应该使用日历来创建日期:

    Calendar cal = Calendar.getInstance();
    cal.set(year, month, day);
    Date newDate = cal.getTime();

    SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
    String dateString = formatter.format(newDate);
于 2012-06-19T09:06:03.360 回答
0

你可以试试这个

String mDate="";
String mMon="";

if(mDay<10)
   mDate="0"+mDay;
if((mMonth+1)<10)
   mMon="0"+(mMonth + 1);

date2.setText(new StringBuilder()
    .append(mDate).append(mMon)
    .append(mYear));

或者您也可以使用SimpleDateFormat

于 2012-06-19T08:40:42.637 回答
0

您可以使用这个库,这将使日期/时间格式之间的转换变得相当容易https://github.com/novoda/NovodaTime

于 2012-06-19T20:33:56.030 回答
-1

使用此函数,它将返回您提到的字符串。

String create_date_string (Date time)
{
    String date = "";
    DateFormat outputFormatter = new SimpleDateFormat("dd/MM/yyyy HH mm ss ");
    date = outputFormatter.format(time);
    String date_tokens[] = date.split(" ");

    return date_tokens[0];
}

希望它会帮助你。

在你的 OnDateSetListener 中使用它

@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
        int dayOfMonth) {
    Calendar calender = Calendar.getInstance();
    calender.set(year, monthOfYear - 1, dayOfMonth);
    String str = create_date_string(calender.getTime());
    date2.setText(str);
}
于 2012-06-19T08:59:40.573 回答