我想更改
中的日期格式String date ="29/07/13";
但它显示 * 无法解释日期错误:“2013年7月29日” (偏移2) * 我希望以2013年7月29日的格式获得约会。
这是我用来更改格式的代码。
tripDate = (TextView) findViewById(R.id.tripDate);
SimpleDateFormat df = new SimpleDateFormat("MMM d, yyyy");
try {
oneWayTripDate = df.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
tripDate.setText(oneWayTripDate.toString());
答案 0 :(得分:28)
试试这样:
String date ="29/07/13";
SimpleDateFormat input = new SimpleDateFormat("dd/MM/yy");
SimpleDateFormat output = new SimpleDateFormat("dd MMM yyyy");
try {
oneWayTripDate = input.parse(date); // parse input
tripDate.setText(output.format(oneWayTripDate)); // format output
} catch (ParseException e) {
e.printStackTrace();
}
这是一个两步过程:首先需要将现有的String解析为Date对象。然后,您需要将Date对象格式化为新的String。
答案 1 :(得分:7)
将格式字符串更改为MM/dd/yyyy
,将parse()
更改为dd MMM yyyy
时使用format()
。
示例:
String str ="29/07/2013";
// parse the String "29/07/2013" to a java.util.Date object
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(str);
// format the java.util.Date object to the desired format
String formattedDate = new SimpleDateFormat("dd MMM yyyy").format(date);
答案 2 :(得分:0)
DateFormat df = new SimpleDateFormat("dd / MM / yyyy, HH:mm");
String date = df.format(Calendar.getInstance().getTime());