С сервера приходит сообщение в таком формате:
String strginDate = "Fri, 05 Jan 2018 15:19:14 GMT";
GMTToDDMMMYYYY(String strginDate)
Так вот, я парсю это таким образом:
private String GMTToDDMMMYYYY(String gmt){
DateFormat sdf = new SimpleDateFormat("E, dd MMM yyyy HH:mm:ss z");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd mmm yyyy", Locale.getDefault());
Date d = null;
try {
d = sdf.parse(gmt);
} catch (ParseException e) {
e.printStackTrace();
}
String dateStr = simpleDateFormat.format(d);
return dateStr;
}
И получаю ошибку:
java.text.ParseException: Unparseable date: "Fri, 05 Jan 2018 15:19:14 GMT" (at offset 0)
Но я перепробовал все, например так:
DateFormat sdf = new SimpleDateFormat("E, dd MMM yyyy HH:mm:ss 'GMT'");
или
DateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss 'GMT'");
и даже так:
DateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy hh:mm:ss 'GMT'");
Но результат такой же.
Где я не правильно делаю?
Нашел ответ, проблема было в том, что нужно было добавить Locale
.
Я писал Local.getDefault()
, а оказывается надо было Locale.US
DateFormat sdf = new SimpleDateFormat("E, dd MMM yyyy HH:mm:ss z", Locale.US);
Виртуальный выделенный сервер (VDS) становится отличным выбором
Для рисования квадрата использую замену ImageView на нарисованный Круг (Rectangle)Вот мой код для создания ImageView и рисования круга:
Пытаюсь подписать word документ с помощью цифровой подписи используя Apache POIЕсть JKS хранилище с парой открытый-закрытый ключ
Чем обусловлен безусловный вызов метода toString() в данном случае? И почему не происходит безусловного вызова второго метода?