2016-04-03 3 views
0

У меня есть строка 10-MAR-1998 14:47, которую мне нужно преобразовать в объект DateTime указанного формата. Например: (dd-MMM-yyyy HH: mm GMT) в java.Как преобразовать строку в datetime указанного формата в java

+0

Ваш вопрос непонятен - когда вы говорите «объект DateTime», вы имеете в виду дату joda DateTime? Если не какой класс вы имеете в виду? Также объект даты/времени обычно представляет собой момент времени, но не имеет формата - вы отформатируете его, когда вам нужно показать его пользователю, используя форматтер. – assylias

+0

В SO может быть около тысячи вопросов по дате в формате java. Не представляю, ты ничего не нашел. –

+0

проверить эту ссылку: http: //stackoverflow.com/questions/6252678/converting-a-date-string-to-a-datetime-object-using-joda-time-library – soorapadman

ответ

0
DateTimeFormatter 

и

SimpleDateFormat 

ваши друзья, мой друг. Вопрос только в том, является ли время ввода строки ввода также в GMT?

Если да, то:

String myString = "10-MAR-1998 14:47"; 
DateFormat format = new SimpleDateFormat("d-M-y H:m"); 
Date date = format.parse(myString); 

должен сделать трюк;)

0

Вы можете попробовать SimpleDateFormat

В вашем случае вы бы

String str = "10-MAR-1998 14:47"; 
DateFormat df = new SimpleDateFormat("dd-MMM-yyyy hh:mm"); 
Date date = df.parse(str); 

Вы можете также вернитесь с даты в строку с указанным форматом следующим образом:

String dateStr = df.format(df.parse(date)); 

Я знаю, что библиотека Joda Time

обрабатывает достаточно хорошо преобразование даты. Но вам нужно будет добавить зависимость от вашего проекта, и если это единственное, что вам нужно для преобразования даты прямо сейчас, я бы предложил придерживаться SimpleDateFormat.

Смежные вопросы