2.2和4.1.2 SimpleDateFormat的区别?

时间:2013-07-23 18:21:42

标签: java android simpledateformat

我有这段代码:

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等级是否存在差异? 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

尝试使用“EEEE”作为日期名称,将“EEE”作为短日期名称