我必须将2017-10-12T09:48:28.338Z
转换为IST,即dd-MM-yyyy HH:mm:ss
。我使用的代码抛出java.lang.IllegalArgumentException: Unknown pattern character 'Y'
这是我的代码:
private String getStandardTime(String dateStr) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dddd'T'HH:mm:ss.SSSZ");
df.setTimeZone(TimeZone.getTimeZone("UTC"));
Date date = null;
try {
date = df.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
df.setTimeZone(TimeZone.getDefault());
String formattedDate = df.format(date);
return formattedDate;
}
任何人都可以帮助我吗?我做错了什么。 作为参考,我检查了
http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html#number
答案 0 :(得分:0)
尝试在代码中使用以下行:
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
Z表示时区字符,您必须引用它,如Z' Z'。你也使用dddd代替dd。