以下代码在Android和标准jdk中生成不同的输出
final DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z",
Locale.GERMAN);
final String today = df.format(new Date());
输出:
Android:Mi., 24 Jul 2013 12:33:12 +0200
标准jdk:Mi, 24 Jul 2013 12:33:12 +0200
在服务器端,它正在抛出解析异常,任何想法?
答案 0 :(得分:3)
我可以建议一个解决方法:
SimpleDateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z",
Locale.GERMAN);
DateFormatSymbols dfs = df.getDateFormatSymbols();
String[] swd = {"", "So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"};
dfs.setShortWeekdays(swd);
df.setDateFormatSymbols(dfs);
现在它会将日期格式化为
Mi, 24 Jul 2013 12:33:12 +0200
标准Java和Android中的
答案 1 :(得分:2)
使用标准UTC日期时间格式。并非所有语言环境都受JDK支持。所以使用Locale.US是安全的,在通过平台交换数据时特别有用。