Добавление значения даты в ArrayList в Android
Из веб-службы я получаю значение даты, например "2011-05-31T00:00:00.000+03:00", и я хочу добавить его в arrayList(String). Как я могу разобрать его в String и записать в массив как "31.05.2011"?
3 ответа
Решение
DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
Date date = df1.parse("2011-05-31T00:00:00.000+03:00")
DateFormat df2 = new SimpleDateFormat("dd.MM.yyyy");
String newDateString = df2.format(date);
Используйте эту функцию:
public String getMydate(String mydate){
try{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.US);
Date date = sdf.parse(mydate);
SimpleDateFormat sdf2 = new SimpleDateFormat("dd.MM.yyyy", Locale.US);
return sdf2.format(date);
}catch(Exception e){
return null;
}
}
И проверьте это с:
String val = "2011-05-31T00:00:00.000+03:00";
String res = getMydate(val);
Использование SimpleDateFormat
проверьте API: http://developer.android.com/reference/java/text/SimpleDateFormat.html