Java DateTime, Упражнения с календарем: преобразование строки в дату и время и наоборот

Java DateTime, Calendar: Exercise-39 with Solution

Напишите программу на Java для преобразования String в дату и время и наоборот.

Пример решения :

Код Java:

 //Лицензия MIT  : https://bit.ly/35gZLa3import java.text.DateFormat; импорт java.text.ParseException; импорт java.text.SimpleDateFormat; импорт java.time.LocalDate; импорт java.time.LocalDateTime; импорт java.time.LocalTime  ; import java.time.OffsetDateTime; import java.time.OffsetTime; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.Locale; публичный класс Main {public  static void main (String [] args) выбрасывает ParseException {System.out.println (" nConvert String to LocalDate:");  LocalDate localDate = LocalDate.parse («2020-06-01»);  System.out.println ("Преобразовать LocalDate в строку:");  Строка localDateAsDefaultString = localDate.toString ();  System.out.println ("LocalDate:" + localDateAsDefaultString + "(год:" + localDate.getYear () + ", месяц:" + localDate.getMonthValue () + ", день:" + localDate.getDayOfMonth () + "  ) ");  LocalTime localTime = LocalTime.parse («12:23:44»);  System.out.println (" nПреобразовать LocalTime в строку:");  Строка localTimeAsDefaultString = localTime.toString ();  System.out.println ("LocalTime:" + localTimeAsDefaultString + "(час:" + localTime.getHour () + ", минута:" + localTime.getMinute () + ", секунда:" + localTime.getSecond () + "  ) ");  System.out.println («Преобразовать строку в LocalDateTime:»);  LocalDateTime localDateTime = LocalDateTime.parse («2020-06-01T11: 20:15»);  System.out.println ("Преобразовать LocalDateTime в String:");  Строка localDateTimeAsDefaultString = localDateTime.toString ();  System.out.println ("LocalDateTime:" + localDateTimeAsDefaultString + "(год:" + localDateTime.getYear () + ", месяц:" + localDateTime.getMonthValue () + ", день:" + localDateTime.getDayOfMonth () + "  , час: "+ localDateTime.getHour () +", минута: "+ localDateTime.getMinute () +", секунда: "+ localDateTime.getSecond () +") ");  System.out.println ("Преобразовать строку в OffsetDateTime:");  OffsetDateTime offsetDateTime = OffsetDateTime.parse ("2007-12-03T10: 15: 30 + 01: 00");  System.out.println ("Преобразовать OffsetDateTime в String:");  Строка offsetDateTimeAsDefaultString = offsetDateTime.toString ();  System.out.println ("OffsetDateTime:" + offsetDateTimeAsDefaultString + "(год:" + offsetDateTime.getYear () + ", месяц:" + offsetDateTime.getMonthValue () + ", день:" + offsetDateTime.getDayOfMonth () + "  , час: «+ offsetDateTime.getHour () +», минута: «+ offsetDateTime.getMinute () +», секунда: «+ offsetDateTime.getSecond () +», смещение: «+ offsetDateTime. getOffset () + ")");  System.out.println ("Преобразовать строку в OffsetTime:");  OffsetTime offsetTime = OffsetTime.parse ("10: 15: 30 + 01: 00");  System.out.println ("Преобразовать OffsetTime в String:");  Строка offsetTimeAsDefaultString = offsetTime.toString ();  System.out.println ("OffsetTime:" + offsetTimeAsDefaultString + "(час:" + offsetTime.getHour () + ", минута:" + offsetTime.getMinute () + ", секунда:" + offsetTime.getSecond () + "  , смещение: "+ offsetTime.getOffset () +") ");  System.out.println («Преобразовать строку в ZonedDateTime:»);  ZonedDateTime zonedDateTime = ZonedDateTime.parse («2020-06-01T10: 15: 30 + 09: 00 [Азия/Токио]»);  System.out.println ("Преобразовать ZonedDateTime в String:");  Строка zonedDateTimeAsDefaultString = zonedDateTime.toString ();  System.out.println ("ZonedDateTime:" + zonedDateTimeAsDefaultString + "(год:" + zonedDateTime.getYear () + ", month:" + zonedDateTime.getMonthValue () + ", день:" + zonedDateTime.getDayOfMonth ()  , час: «+ zonedDateTime.getHour () +», минута: «+ zonedDateTime.getMinute () +», секунда: «+ zonedDateTime.getSecond () +», смещение: «+ zonedDateTime.getOffset () +», зона  : "+ zonedDateTime.getZone () +") ");  System.out.println (" nJava 8, преобразовать с помощью средства форматирования:");  DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern ("дд.ММ.гггг");  System.out.println («Преобразовать строку в LocalDate:»);  LocalDate localDateFormatted = LocalDate.parse («01.06.2020», dateFormatter);  System.out.println ("Преобразовать LocalDate в строку:");  Строка localDateAsFormattedString = dateFormatter.format (localDateFormatted);  System.out.println ("Дата:" + localDateAsFormattedString + "(год:" + localDateFormatted.getYear () + ", месяц:" + localDateFormatted.getMonthValue () + ", день:" + localDateFormatted.getDayOfMonth () + "  ) ");  DateTimeFormatter timeFormatter = DateTimeFormatter.ofPattern ("ЧЧ | мм | сс");  System.out.println («Преобразовать строку в LocalTime:»);  LocalTime localTimeFormatted = LocalTime.parse («12 | 23 | 44», timeFormatter);  System.out.println ("Преобразовать LocalTime в String:");  Строка localTimeAsFormattedString = timeFormatter.format (localTimeFormatted);  System.out.println ("Время:" + localTimeAsFormattedString + "(час:" + localTimeFormatted.getHour () + ", минута:" + localTimeFormatted.getMinute () + ", секунда:" + localTimeFormatted.getSecond () + "  ) ");  DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern ("дд.ММ.гггг, ЧЧ: мм: сс");  System.out.println («Преобразовать строку в LocalDateTime:»);  LocalDateTime localDateTimeFormatted = LocalDateTime.parse («01.06.2020, 11:20:15», dateTimeFormatter);  System.out. println ("Преобразовать LocalDateTime в String:");  Строка localDateTimeAsFormattedString = dateTimeFormatter.format (localDateTimeFormatted);  System.out.println ("DateTime:" + localDateTimeAsFormattedString + "(год:" + localDateTimeFormatted.getYear () + ", месяц:" + localDateTimeFormatted.getMonthValue () + ", день:" + localDateTimeFormatted.getDay)  , час: "+ localDateTimeFormatted.getHour () +", минута: "+ localDateTimeFormatted.getMinute () +", секунда: "+ localDateTimeFormatted.getSecond () +") ");  DateTimeFormatter offsetDateTimeFormatter = DateTimeFormatter.ofPattern ("гггг.ММ.дд, ЧЧ: мм: сс, XXXXX");  System.out.println ("Преобразовать строку в OffsetDateTime:");  OffsetDateTime offsetDateTimeFormatted = OffsetDateTime.parse ("2007.12.03, 10:15:30, +01: 00", offsetDateTimeFormatter);  System.out.println ("Преобразовать OffsetDateTime в String:");  Строка offsetDateTimeAsFormattedString = offsetDateTimeFormatter.format (offsetDateTimeFormatted);  System.out.println ("OffsetDateTime:" + offsetDateTimeAsFormattedString + "(год:" + offsetDateTimeFormatted.getYear () + ", месяц:" + offsetDateTimeFormatted.getMonthValue () + ", день:" + offsetDateTimeFormatted.getDateTimeFormatted.get  , час: «+ offsetDateTimeFormatted.getHour () +», минута: «+ offsetDateTimeFormatted.getMinute () +», секунда: «+ offsetDateTimeFormatted.getSecond () +», смещение: «+ offsetDateTimeFormatted.getOffset () +«) »  );  DateTimeFormatter offsetTimeFormatter = DateTimeFormatter.ofPattern ("ЧЧ мм сс XXXXX");  System.out.println ("Преобразовать строку в OffsetTime:");  OffsetTime offsetTimeFormatted = OffsetTime.parse ("10 15 30 +01: 00", offsetTimeFormatter);  System.out.println ("Преобразовать OffsetTime в String:");  Строка offsetTimeAsFormattedString = offsetTimeFormatter.format (offsetTimeFormatted);  System.out.println ("OffsetTime:" + offsetTimeAsFormattedString + "(час:" + offsetTimeFormatted.getHour () + ", минута:" + offsetTimeFormatted.getMinute () + ", секунда:" + offsetTimeFormatted.getSecond () + "  , смещение: "+ offsetTimeFormatted.getOffset () +") ");  DateTimeFormatter zonedDateTimeFormatter = DateTimeFormatter.ofPattern ("дд.ММ.гггг, ЧЧ: мм: ssXXXXX '[' VV ']'"); //DateTimeFormatter zonedDateTimeFormatter//= DateTimeFormatter.ofPattern ("dd.MM.yyyy, HH: mm: ssXXXXX '[' VV ']'"). WithZone (ZoneId.of ("Europe/Paris"));  System.out.println («Преобразовать строку в ZonedDateTime:»);  ZonedDateTime zonedDateTimeFormatted = ZonedDateTime.parse («01.06.2020, 11: 20: 15 + 09: 00 [Азия/Токио]», zonedDateTimeFormatter);  System.out.println ("Преобразовать ZonedDateTime в String:");  Строка zonedDateTimeAsFormattedString = zonedDateTimeFormatted.format (zonedDateTimeFormatter);  System.out. println ("ZonedDateTime:" + zonedDateTimeAsFormattedString + "(год:" + zonedDateTimeFormatted.getYear () + ", month:" + zonedDateTimeFormatted.getMonthValue () + ", день:" + zonedDateTimeFormatted.get  + zonedDateTimeFormatted.getHour () + ", минута:" + zonedDateTimeFormatted.getMinute () + ", секунда:" + zonedDateTimeFormatted.getSecond () + ", смещение:" + zonedDateTimeFormatted.getOffset () + ", zone:" + zonedDateTimeFormatted.  .getZone () + ")");  }}  

Пример вывода:

 Преобразовать строку в LocalDate: преобразовать LocalDate в String: LocalDate: 2020-06-01 (год: 2020, месяц  : 6, день: 1) Преобразовать LocalTime в String: LocalTime: 12:23:44 (час: 12, минута: 23, секунда: 44) Преобразовать String в LocalDateTime: преобразовать LocalDateTime в String: LocalDateTime: 2020-06-01T11:  20:15 (год: 2020, месяц: 6, день: 1, час: 11, минута: 20, секунда: 15) Преобразовать строку в OffsetDateTime: преобразовать OffsetDateTime в строку: OffsetDateTime: 2007-12-03T10: 15: 30+  01:00 (год: 2007, месяц: 12, день: 3, час: 10, минута: 15, секунда: 30, смещение: +01: 00) Преобразовать строку в OffsetTime: преобразовать OffsetTime в строку: OffsetTime: 10:15  : 30 + 01: 00 (час: 10, минута: 15, секунда: 30, смещение: +01: 00) Преобразовать String в ZonedDateTime: Преобразовать ZonedDateTime в String: ZonedDateTime: 2020-06-01T10: 15: 30 + 09:  00 [Азия/Токио] (год: 2020, месяц: 6, день: 1, час: 10, минута: 15, секунда: 30, смещение: +09: 00, зона: Азия/Токио) Java 8, преобразование с помощью средства форматирования  : Преобразовать строку в LocalDa  te: Преобразовать LocalDate в String: Дата: 01.06.2020 (год: 2020, месяц: 6, день: 1) Преобразовать String в LocalTime: Преобразовать LocalTime в String: Время: 12 | 23 | 44 (час: 12, минута: 23  , секунда: 44) Преобразовать строку в LocalDateTime: преобразовать LocalDateTime в строку: DateTime: 01.06.2020, 11:20:15 (год: 2020, месяц: 6, день: 1, час: 11, минута: 20, секунда: 15  ) Преобразовать строку в OffsetDateTime: преобразовать OffsetDateTime в строку: OffsetDateTime: 2007.12.03, 10:15:30, +01: 00 (год: 2007, месяц: 12, день: 3, час: 10, минута: 15, секунда:  30, смещение: +01: 00) Преобразовать строку в OffsetTime: преобразовать OffsetTime в строку: OffsetTime: 10 15 30 +01: 00 (час: 10, минута: 15, секунда: 30, смещение: +01: 00) Преобразовать строку  в ZonedDateTime: преобразовать ZonedDateTime в String: ZonedDateTime: 01.06.2020, 11: 20: 15 + 09: 00 [Азия/Токио] (год: 2020, месяц: 6, день: 1, час: 11, минута: 20, секунда  : 15, смещение: +09: 00, зона: Азия/Токио) 

Блок-схема:

Редактор кода Java:

Назад: Напишите программу на Java для вычисления разницы между двумя датами в днях.
Далее: Напишите программу на Java для отображения текущей даты без времени и текущего времени без даты.

Оцените статью
nanomode.ru
Добавить комментарий