2012-12-11 2 views
2

У меня проблема с использованием Date в java, У меня есть строка, которая представляет собой дату, например String date = "23/10/2012"; и у меня есть функция, которая получить дату в качестве параметра, напримерКонструктор объектов Java Date для получения строки устарел

public void foo(Date date){...} 

моя проблема заключается в том, что дата конструктор, который принимает строку устарела и я не хочу использовать устаревший объект.

ответ

3

Итак, вы смотрите на Javadoc for the deprecated method, который определяет:

Устаревший. Начиная с версии JDK версии 1.1, заменяется DateFormat.parse (String s).

Затем вы смотрите DateFormat.parse и действуйте соответственно. Вероятно, вы хотите создать SimpleDateFormat - или еще лучше, используйте Joda Time, который намного лучше подходит для API даты/времени.

Если метод устарел, всегда рекомендуется указывать, к чему должен быть перенесен существующий код, и в идеале, почему старый метод устарел. Следуйте этому руководству, когда вы осуждаете свои собственные методы ... и всякий раз, когда вы пытаетесь использовать , используйте устаревший метод, проверьте документацию, чтобы узнать, предлагает ли она лучшую альтернативу.

+0

Спасибо большое, я, вероятно, должен был выглядеть лучше в JD, также там уже есть решение этой проблемы на этом сайте в разделе http://stackoverflow.com/questions/11624625/convert-string-to-date-object-in-java –

1

Возможно, вам потребуется использовать SimpleDatFormat (или) Joda library.

Пример:

new SimpleDateFormat("dd/MM/yyyy").parse(yourDateString); 
+0

Спасибо за помощь –

3

Используйте SimpleDateFormat.parse(String) разобрать строку java.util.Date объект

String date = "23/10/2012" 
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(date); 
+0

благодарит за помощь –

+0

@YoAl приветствуется :) – PermGenError

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