这是我的代码。在尝试转换我的回复时,我收到错误“无法将给定对象格式化为日期”。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
holder.date.setText(sdf.format(item.getPrice().getDate()));
如何将我的回复2017-02-03T11:44:52.6152Z
转换为2017年2月3日?
感谢
答案 0 :(得分:1)
使用以下代码将日期字符串转换为您的格式。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",Locale.getDefault());
//Date date3 = sdf.parse("2017-02-03T11:44:52.6152Z");
Date date3 = sdf.parse(item.getPrice().getDate());
SimpleDateFormat formatter = new SimpleDateFormat("dd-MMMM-yyyy",Locale.getDefault());
String convertedDate= formatter.format(date3);
答案 1 :(得分:0)
尝试这样的事情:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date3 = null;
date3 = sdf.parse(item.getPrice().getDate());
formatter = new SimpleDateFormat("dd-MM-yyy");
String date1 = formatter.format(date3);
holder.date.setText(date1);
答案 2 :(得分:0)
您的代码中存在两个问题。
Format
以Date
为参数,您正在传递String
。尝试以下代码
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
try{
Date a= sdf.parse(item.getPrice().getDate());
SimpleDateFormat f = new SimpleDateFormat("dd-MMMM-yyy");
holder.date.setText(f.format(a));
} catch (Exception e) {
e.printStackTrace();
System.out.print(e.toString());
}
}