Как перевести строку в дату java
Перейти к содержимому

Как перевести строку в дату java

  • автор:

Как преобразовать строку в дату java

Конвертация строки в дату в Java может быть выполнена с помощью класса SimpleDateFormat :

import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DateConversionExample  public static void main(String[] args)  String dateStr = "2022-04-01"; DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); try  Date date = formatter.parse(dateStr); > catch (ParseException e)  e.printStackTrace(); > > > 

В этом примере мы

  • импортируем классы DateFormat , SimpleDateFormat , Date и ParseException
  • в методе main мы объявляем строку, содержащую дату в формате yyyy-MM-dd
  • создаем объект SimpleDateFormat для конвертации этой строки в дату и вызываем метод parse() этого объекта, чтобы получить объект Date
  • если входная строка не соответствует заданному формату, метод parse() выкинет исключение ParseException , которое мы обрабатываем с помощью блока catch

Преобразование строки в дату

Есть переменная типа стринг s=»05.09.2013″; пытаюсь преобразовать в тип Date . Не получается. Подскажите, пожалуйста, в чем ошибка.

SimpleDateFormat format = new SimpleDateFormat(); format.applyPattern("dd.mm.yyyy"); Date docDate= format.parse(docDate); 

Отслеживать
141 1 1 золотой знак 2 2 серебряных знака 9 9 бронзовых знаков
задан 16 апр 2013 в 9:23
Sergey4590 Sergey4590
447 6 6 золотых знаков 17 17 серебряных знаков 39 39 бронзовых знаков
Как указал @GlyyK буквы m не того размера. (m — минуты)
16 апр 2013 в 9:41

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy"); 

Отслеживать
141 1 1 золотой знак 2 2 серебряных знака 9 9 бронзовых знаков
ответ дан 16 апр 2013 в 9:31
607 6 6 серебряных знаков 17 17 бронзовых знаков

Вариант автора будет работать тоже, только немного изменить надо:

String s=»05.09.2013″; SimpleDateFormat format = new SimpleDateFormat(); format.applyPattern(«dd.MM.yyyy»); Date docDate= format.parse(s);

Отслеживать
ответ дан 16 апр 2013 в 10:19
418 2 2 серебряных знака 8 8 бронзовых знаков

    Важное на Мете
Связанные
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Распарсить строку в дату

Распарсить строку в LocalDate
Как распарсить строку вида "27 января 2020" в объект типа LocalDate?

Распарсить строку на составляющие
Я ввожу в консоль строку find file.txt и теперь мне нужно распарсить строку, на составляющие. .

Как распарсить строку на токены используя регулярные выражения
Здравствуйте!Надо распарсить строку такую например "set int MyVar=7" чтобы получились.

Эксперт Java

3638 / 2970 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
Например с помощью метода substring
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
Как один из вариантов:

1 2 3 4 5 6
String oldString = "20210111"; StringBuffer sb = new StringBuffer(oldString); String answer = sb.insert(4,'-') .insert(7,'-') .toString(); System.out.println(answer);

Am I evil? Yes, I am!

Эксперт PythonЭксперт Java

18966 / 9661 / 2710
Регистрация: 21.10.2017
Сообщений: 21,465

1 2 3 4 5 6
public static void main(String[] args) { String s = "20210111"; DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); LocalDate date = LocalDate.parse(s, formatter); System.out.println(date); }
2021-01-11

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

TimeSpan выдает исключение OverflowException при попытке распарсить строку на дату
Выдает исключение OverflowException при попытке распарсить строку на дату. Входные данные.

Распарсить дату из веб-сайта
Здравствуйте! Нужен метод, который будет обращаться к сервису "Даты-Время" парсить и возвращать.

Распарсить строку
Суть вопроса такова, есть тест: MyName is: Brain So, bla bla Мне нужно спарсить Brain

распарсить строку
как сделать чтобы в EditText можно было вводить только русские буквы? Какое значение inputType.

Как преобразовать String в Date (строки в дату) в Java?

SimpleDateFormat позволяет начать с выбора любых пользовательских шаблонов для форматирования даты и времени. Класс Java.text.SimpleDateFormat используется для синтаксического анализа и форматирования дат в соответствии с шаблоном форматирования, который вы указываете сами.

String format = "dd/MM/yyyy"; SimpleDateFormat dateFormat = new SimpleDateFormat(format);

Преобразование строк в дату

Пример
import Java.text.SimpleDateFormat; import Java.util.Date; import Java.text.ParseException; import Java.text.DateFormat; public class TestClass< public static void main(String[] args) < try< String stringDate="01/12/1995"; Date date=new SimpleDateFormat("dd/MM/yyyy").parse(stringDate); System.out.println("Date is : "+date); >catch(Exception e) < System.out.println(e); >> >

Вот выдержка из всех доступных шаблонов формата из Javadoc:

Вот выдержка из всех доступных шаблонов формата из Javadoc.

import Java.text.SimpleDateFormat; import Java.util.Date; import Java.text.ParseException; import Java.text.DateFormat; public class TestClass< public static void main(String[] args) < String stringDate = "03/08/1995"; String stringDate2 = "02-09-1995 23:37:50"; String stringDate3 = "02-May-1995"; String stringDate4 = "04 02, 1995"; String stringDate5 = "Thu, May 02 1995"; String stringDate6 = "Thu, May 02 1995 23:37:50"; DateFormat date = new SimpleDateFormat("dd/MM/yyyy"); DateFormat date2 = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); DateFormat date3 = new SimpleDateFormat("dd-MMM-yyyy"); DateFormat date4 = new SimpleDateFormat("MM dd, yyyy"); DateFormat date5 = new SimpleDateFormat("E, MMM dd yyyy"); DateFormat date6 = new SimpleDateFormat("E, MMM dd yyyy HH:mm:ss"); try< Date nDate1 = date.parse(stringDate); System.out.println(stringDate + " : " + date.format(nDate1)); Date nDate2 = date2.parse(stringDate2); System.out.println(stringDate2 + " : " + date2.format(nDate2)); Date nDate3 = date3.parse(stringDate3); System.out.println(stringDate3 + " : " + date3.format(nDate3)); Date nDate4 = date4.parse(stringDate4); System.out.println(stringDate4 + " : " + date4.format(nDate4)); Date nDate5 = date5.parse(stringDate5); System.out.println(stringDate5 + " : " + date5.format(nDate5)); Date nDate6 = date6.parse(stringDate6); System.out.println(stringDate6 + " : " + date6.format(nDate6)); >catch(Exception e) < System.out.println(e); >> >

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *