Android SimpleDataFormat在不同的平板电脑上表现不同

Android SimpleDataFormat在不同的平板电脑上表现不同,android,simpledateformat,Android,Simpledateformat,我有一台华硕Fonepad第一代(安卓4.1.2)和一台华硕Fonepad第二代(安卓4.3) 我使用以下代码将日期解析为我的应用程序中所需的格式: SimpleDateFormat df = new SimpleDateFormat("MMM dd HH:mm:ss yyyy", /*new Locale("nl", "NL")*/Locale.GERMANY); df.setTimeZone(TimeZone.getTimeZone(/*"Europe/Amsterdam"*

我有一台华硕Fonepad第一代(安卓4.1.2)和一台华硕Fonepad第二代(安卓4.3)

我使用以下代码将日期解析为我的应用程序中所需的格式:

SimpleDateFormat df = new SimpleDateFormat("MMM dd HH:mm:ss yyyy", /*new Locale("nl", "NL")*/Locale.GERMANY);
        df.setTimeZone(TimeZone.getTimeZone(/*"Europe/Amsterdam"*/"Europe/Berlin"));
        String time = df.format(new Date());
上述代码导致第一代fonepad上出现“Dez 23 17:09:25 2013”,第二代fonepad上出现“Dez 23 17:09:25 2013”

如您所见,第二代在月份后添加一个点

这会导致服务器端出现ParseException

为什么SimpleDataFormat在不同的设备(android版本)上表现不同?这令人担忧

有没有办法总是获得相同的格式?解决这个问题的办法是什么

谢谢。

SimpleDataFormat(和其他一些框架类)使用icu4c库格式化内容。DE的月份格式在此库的49.2和50.1版本之间更改。 不,你不能期望所有android版本都有相同的行为

链接到来源:

添加:如果您向服务器发送数据,则解决方案是仅使用数字:12月份的数字将始终为12