我试图解析这个字符串:"2018-08-21T10:12:06.872722+00:00"但得到了 java.text.ParseException。我正在使用这种格式:"yyyy-MM-dd'T'HH:mm:ss.SSSz"重要:我尝试使用:XXX, ZZZZZ, ZZZ, z 表示时区,但不起作用怎么了?谢谢。将日期转换为新格式:formatDate("2018-08-21T10:12:06.872722+00:00");public static String formatDate(String date) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSz"); SimpleDateFormat output = new SimpleDateFormat("yyyy-MM-dd"); Date d; try { d = sdf.parse(date); } catch (ParseException e) { e.printStackTrace(); return ""; } return output.format(d);}
3 回答
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
在java 8或更高版本中,使用单行代码可以达到相同的效果:
System.out.println(OffsetDateTime.parse("2018-08-21T10:12:06.872722+00:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME).toLocalDate());
输出:
2018-08-21
添加回答
举报
0/150
提交
取消