我从这样的服务器获取数据:
data = "2015-04-24T23:00:17+08:00"
我在UTC + 8,我想得到
data = "2015-04-24 23:00:17"
我对此编程
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
Data = formatter.parse(data);
但是我明白了
Fri Apr 24 23:00:17 格林尼治标准时间+0800 2015
我该如何纠正?
如果我用
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-M-dd HH:mm:ss",Locale.ENGLISH);
我懂了
Fri Apr 24 23:00:17 GMT+08:00 2015
不是我想要的
最佳答案
解析从服务器返回的日期后,便有了一个java.util.Date对象。如果要转换为自己的格式,则必须再次格式化日期对象。
private String getDate(String serverDate) {
SimpleDateFormat serverFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
try {
Date date = serverFormatter.parse(serverDate);
SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = myFormatter.format(date);
return formattedDate;
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
关于android - Android使用SimpleDateFormat,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29851305/