Привет Хотя выше ответ является правильным, но в качестве альтернативы к этому вы можете использовать метод ниже
первого экстракт длинного DATETIME с использованием JSON метода ниже.
String JsonDate = jsonGroup.getString("Date");
int idx1 = JsonDate.indexOf("(");
int idx2 = JsonDate.indexOf("+");
if (idx1 > 0 && idx1 < idx2 && idx2 < JsonDate.length()) {
String s = JsonDate.substring(idx1 + 1, idx2);
}
После того как вы дату вы можете конвертировать Долго Дата
if (!s.equalsIgnoreCase("null")) {
Long date1 = Long.parseLong(s);
Date dt1 = new Date(date1);
holder.TxtPunchoutDate.setText(getDateCurrentTimeZone(dt1));
}
и множество От даты в формате UTC и затем преобразовать его обратно к местному времени, как показано ниже
public static String getDateCurrentTimeZone(Date dt) {
try {
//Convert DATE to UTC DATETIME
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
"MMM dd yyyy hh:mm:ss aa ");
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
//simpleDateFormat.setTimeZone(TimeZone.getDefault());
//Convert to LocalDATE from UTC
Date fromGmt = new Date(dt.getTime() + TimeZone.getDefault().getOffset(dt.getTime()));
return new SimpleDateFormat("MMM dd yyyy hh:mm:ss aa").format(fromGmt).toString();
} catch (Exception e) {
}
return "";
}
Как было сказано ранее, это альтернатива, а не правильный способ сделать это. Хотя, если кто-то захочет реорганизовать это, пожалуйста, вы всегда рады.
Thanks
Но что означают эти значения стриба. Каковы их соответствующие даты? – Raedwald