我有这段代码:
public static String WEEK_DAY_SHORT = "c";
public static String getWeekDay(int day) {
GregorianCalendar calendar = new GregorianCalendar();
calendar.set(Calendar.DAY_OF_WEEK, day + 2);
DateFormat formatter = new SimpleDateFormat(WEEK_DAY_SHORT + ", " + DATE);
return formatter.format(calendar.getTime());
}
当我在4.1.2上运行此方法时,一切正常,我得到像Mo;Di;Mi;...
这样的输出
但是当我在2.2上运行时,我收到以下错误:
java.lang.IllegalArgumentException: Unknown pattern character - 'c'
at java.text.SimpleDateFormat.validateFormat(SimpleDateFormat.java:379)
at java.text.SimpleDateFormat.validatePattern(SimpleDateFormat.java:428)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:499)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:363)
at
de.MayerhoferSimon.Vertretungsplan.Utils.DateHelper.getWeekDay(DateHelper.java:54)
同样的情况是,当我尝试使用"cc"
获取短日期名称或"cccc"
获取较长的日期名称时。
2.2和4.1.2之间的SimpleDateFormat
等级是否存在差异?
我该如何解决这个问题?
答案 0 :(得分:2)
尝试使用“EEEE”作为日期名称,将“EEE”作为短日期名称