Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 18 июн 2019, 17:51

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Ошибка: java.text.ParseException
СообщениеДобавлено: 07 окт 2013, 13:32 

Зарегистрирован: 18 дек 2012, 14:13
Сообщений: 4
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Добрый день подскажите пожалуйста при конвертации строки в дату получаю следующий ексепшн:
10-07 12:58:19.047: W/System.err(13857): java.text.ParseException: Unparseable date: "Fri Aug 09 16:12:56 Восточноевропейское время 2013"
Насколько я понимаю нужно правильно выставить локаль? Но какую?
Вот метод который конвертит:
Код: [ Загрузить ] [ Скрыть ]
  1. public static String ConvertStringToDate(Object data){ 
  2.      
  3.     SimpleDateFormat format = new SimpleDateFormat(Constants.DATE_FORMAT, Locale.getDefault()); 
  4.     Date newDate = null; 
  5.     try { 
  6.             newDate = format.parse(data.toString()); 
  7.     } catch (ParseException e) { 
  8.         // TODO исправить 
  9.         Log.i(null, e.getMessage()); 
  10.     } 
  11.      
  12.     return format.format(newDate); 
  13.      

где
Код: [ Загрузить ] [ Скрыть ]
  1. public static final String DATE_FORMAT = "dd/MM/yyyy";  


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Ошибка: java.text.ParseException
СообщениеДобавлено: 07 окт 2013, 13:48 
Аватар пользователя

Зарегистрирован: 10 июн 2013, 15:05
Сообщений: 584
Откуда: UA
Благодарил (а): 14 раз.
Поблагодарили: 74 раз.
Почему-то метод называется ConvertStringToDate т.е. по идее входящим параметром должен быть String а возвращаемым значением типа Date
Могу предположить что тебе в метод приходит объект типа Date хотя тип параметра почему-то Object, и ты хочешь вернуть строку вида "dd/MM/yyyy".

Для этого вполне хватит:
Код: [ Загрузить ] [ Скрыть ]
  1.   public static String ConvertStringToDate(Date data) { 
  2.     SimpleDateFormat format = new SimpleDateFormat(DATE_FORMAT, Locale.getDefault()); 
  3.     return format.format(data); 
  4.   } 


То что происходит у тебя в коде:
data.toString() переводить объект типа Date в строку "Fri Aug 09 16:12:56 Восточноевропейское время 2013"
потом ты эту сроку вызовом метода format.parse() пытаешь распарсить по образцу "dd/MM/yyyy" на что система резонно выдает ParseException - не может распарсить строку

_________________
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Ошибка: java.text.ParseException
СообщениеДобавлено: 07 окт 2013, 14:20 

Зарегистрирован: 18 дек 2012, 14:13
Сообщений: 4
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Да действительно в объекте хранилась уже готовая дата... и парсить ничего не нужно было. По поводу названия, метод периодически менялся в связи с поиском ошибок а название оставалось прежним...
Спасибо.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB