Я использую Parse.com, и у каждого ParseObject есть столбец даты с типом даты в формате UTC.
Я хочу отсортировать те объекты, которые я получаю из запроса по дате.Поэтому я использую SimpleDateFormat и Comparator для сравнения дат, но выдает это исключение:
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:766)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:766)
Caused by: java.text.ParseException: Unparseable date: "Thu Dec 06 16:20:00 GMT+01:00 2018" (at offset 0)
Код:
private fun formatQueryData(unsortedList: ArrayList<ParseObject>){
unsortedList.sortWith(object : Comparator<ParseObject>{
var f = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SS'Z'")
override fun compare(o1: ParseObject, o2: ParseObject): Int {
try {
return f.parse(o1.getDate("date").toString()).compareTo(f.parse(o2.getDate("date).toString()))
} catch (e: ParseException) {
throw IllegalArgumentException(e)
}
}
})
}