Итак, я пытаюсь напечатать строку «Eastern Daylight Time» вместо EDT. Это должно быть динамическим, а не жестко закодированным. Поиск в классе DateFormatter не привел меня к ответу, который сработал.Android DateFormatter print Восточное дневное время вместо EDT
Here was an example, который позволяет мне форматировать, но не привел меня к моему конкретному ответу.
Я получаю дату обратно в следующем формате -
2013-06-08T00: 00: 00-04: 00
Вот являются нечто, что я попробовал -
1)
String dateString = changeFormatDateStringWithDefaultTimeZone(paymentConfirmation.getTransactionDate(),
"yyyy-MM-dd'T'HH:mm:ssZ",
"M/d/yyyy hh:mm a zz");
public static String changeFormatDateStringWithDefaultTimeZone(String value, String ip_format, String op_format) {
if (value == null)
return null;
try {
SimpleDateFormat opSDF = new SimpleDateFormat(op_format, Locale.US);
opSDF.setTimeZone(TimeZone.getDefault());
SimpleDateFormat inSDF = new SimpleDateFormat(ip_format, Locale.US);
Date date = inSDF.parse(value);
return(opSDF.format(date));
} catch (Exception e) {
Log.e("Err", "Failed to convert time "+value);
e.printStackTrace();
}
return null;
}
2)
Date today = Calendar.getInstance().getTime();
String todayString = DateUtils.convertDateToStringWithTimeZone(today);
public static String convertDateToStringWithTimeZone(Date date){
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
String dateString = df.format(date);
dateString += " " + TimeZone.getDefault().getDisplayName(false, TimeZone.LONG);
return dateString;
}
Они всегда печатают часовой пояс как EDT, и я хочу строку Eastern Daylight Time. Может ли кто-нибудь помочь мне с этим?
Похоже, что ресурсы для Android вашего устройства разные. Возможно, вы можете попробовать обновить свою ОС Android. –
работает под управлением Android 6.0.1 и протестирован на двух устройствах. –
Ну, первый пример должен использовать «zzzz», а не «zz», но он, наконец, покажет, что вам дает второй способ. Вы также посмотрели класс 'DateFormatSymbols' и его метод [getZoneStrings()] (http://docs.oracle.com/javase/8/docs/api/java/text/DateFormatSymbols.html#getZoneStrings--)? –