Ранее работавший код форматирования даты ничего не возвращает в Micromax A111

#java #android #date

#java #Android #Дата

Вопрос:

Я использую следующий код для форматирования даты.

 private String getDate(String datestring) {
  Date date = null;
  DateFormat writeFormat = new SimpleDateFormat("dd-MM-yyyy");
  try {
    date = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy",
        Locale.ENGLISH).parse(datestring);
    String formattedDate = "";
    if (date != null) {
      formattedDate = writeFormat.format(date);
    }
    Log.d("Complaint adapter", formattedDate);
    return formattedDate;
  } catch (ParseException e) {
    e.printStackTrace();
  }
  return "";
}
  

Этот код отлично работает на некоторых устройствах, но при запуске того же самого в Micromax A111 он ничего не возвращает. Это не отображается в данном поле. Кто-нибудь может помочь мне решить эту проблему.

Комментарии:

1. Date date …… date=new SimpleDateFormat... ??? Требуется серьезное редактирование

2. Извините, но я не знаю о stderr. Я использую Android SDK для разработки этого приложения.

3. @suresh Проверьте LogCat на наличие ошибок.

4. Он не возвращает никакой ошибки @Duncan

5. @suresh вы уверены? Может быть, опубликуйте свой logcat здесь, чтобы мы могли посмотреть?

Ответ №1:

Наконец, следующий код сработал для меня.

 private String getDate(String datestring) {
    // TODO Auto-generated method stub
    SimpleDateFormat currentformat = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", java.util.Locale.getDefault());
    SimpleDateFormat requiredformat = new SimpleDateFormat("dd-MM-yyyy", java.util.Locale.getDefault());
    try {
        Date date = null;
        date = currentformat.parse(datestring);
        datestring = requiredformat.format(date);
        return datestring;
    } catch (ParseException e) { 
        Log.e("Formating date", e.getMessage());
    }
    return datestring;
}