Как преобразовать объект String в объект Date?
Думаю, мне нужно сделать что-то вроде этого:
Date d=(some conversion ) "String "
Любая помощь будет принята с благодарностью.
Как преобразовать объект String в объект Date?
Думаю, мне нужно сделать что-то вроде этого:
Date d=(some conversion ) "String "
Любая помощь будет принята с благодарностью.
SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy");
Date date = dateFormat.parse("1.1.2001");
Подробнее см. Документация SimpleDateFormat
Преобразование Date-to-String является относительно сложной операцией синтаксического анализа, а не тем, что вы можете сделать с простым приведением, как вы пытаетесь.
Вам нужно будет использовать DateFormat. Это может быть просто:
Date d = DateFormat.getDateInstance().parse("09/10/2009");
Но это изменяет формат ожидаемой даты в зависимости от настроек языкового стандарта, на котором он работает. Если у вас определенный формат даты, вы можете использовать SimpleDateFormat:
Date d = new SimpleDateFormat("d MMM yyyy HH:mm").parse("4 Jul 2001 12:08");
Обратите внимание, что метод parse всегда будет ожидать один конкретный формат и не будет пытаться угадать, что может означать, если он получает другой формат.
Смотрите Sun Java tutorial и класс SimpleDateFormat
Используйте SimpleDateFormat
со строкой формата, которая соответствует вашему фактическому формату:
SimpleDateFormat sdf =
new SimpleDateFormat("yyyy-MM-dd");
Date d = sdf.parse("2009-10-09");
java.text.SimpleDateFormat, который расширяет абстрактный класс java.text.DateFormat.
DateFormat MYDate = new SimpleDateFormat("dd/MM/yyyy");
Date today = MYDate.parse("09/10/2009");
вы должны разобрать строку с классом SimpleDateFormat
использование
Date date = DateFormat.getInstance.parse( dateString );
Вы можете преобразовать объект String в объект Date с помощью этого метода. и этот Java-код проверен и запущен в моей среде.
public static Date parseStringAsDate(String dateStr, String format) throws ParseException
{
if(null==dateStr || "".equals(dateStr))
throw new IllegalArgumentException("dateStr must not be null or empty");
DateFormat df = new SimpleDateFormat(format);
return df.parse(dateStr);
}
dateStr = "17/05/2017"
format = "dd/MM/yyyy"