Я установил японскую дату с помощью Locale (например, 21 11 月 2016) в приложении для Android. Но я хочу отправить эту дату в формат «dd-MM-yyyy» (например, 21-11-2016) для своих API.Как преобразовать японскую дату в формат даты на английском языке?
Когда я пытаюсь сделать это я получаю ниже исключение:
java.lang.IllegalArgumentException: Плохой класс: класс java.lang.String
Ниже мой код:
public String convertDate(String date) {
System.out.println("......ORIGINAL DATE....... " + date); // ......ORIGINAL DATE....... 21 11月 2016
String myFormat = "dd-MM-yyyy"; //In which you need put here
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, new Locale(getMyLocale())); //Japanese locale is set but tried english too
System.out.println("......CONVERTED DATE....... " + sdf.format(date)); //should be 21-11-2016 but getting above error
return sdf.format(new Date(date));
}
Кроме того, для US/English Locale он отлично работает, но для японца я получаю эту ошибку.
, как вы разбор строки, то вы должны использовать '' parse' не format' Также формат '21 11 月 2016' не' дд-MMM- yyyy' - попробуйте разобрать формат 'dd MM 月 yyyy', если это действительно ваша строка –
См. dd-MM-yyyy - это формат, в котором он мне нужен, но на текстовом ярлыке, который я установил как 21 ноября 2016 года. – VVB
И для синтаксического анализа Я получаю эту ошибку java.text.ParseException: Unparseable date: «2016 年 11 月 21 日» (со смещением 11) – VVB