Как я могу конвертировать java.util.Date
в String
используя
DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss")
Объект Date, который я получаю, передается
DateTime now = new DateTime(date);
Как я могу конвертировать java.util.Date
в String
используя
DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss")
Объект Date, который я получаю, передается
DateTime now = new DateTime(date);
Если вы используете Java 8, вы не должны в первую очередь использовать java.util.Date
(если только вы не получили объект Date
из библиотеки, которую вы не можете контролировать).
В любом случае вы можете преобразовать Date
в java.time.Instant
используя:
Date date = ...;
Instant instant = date.toInstant();
Поскольку вас интересуют только дата и время без информации о часовом поясе (я предполагаю, что все указано в формате UTC), вы можете преобразовать этот момент в объект LocalDateTime
:
LocalDateTime ldt = instant.atOffset(ZoneOffset.UTC).toLocalDateTime();
Наконец, вы можете распечатать его с помощью:
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss");
System.out.println(ldt.format(fmt));
Или используйте предопределенный форматер DateTimeFormatter.ISO_LOCAL_DATE_TIME
.
System.out.println(ldt.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME));
Обратите внимание, что если вы не предоставите средство форматирования, вызов ldt.toString
даст вывод в стандартном формате ISO 8601 (включая миллисекунды) - это может быть приемлемо для вас.
DateTime dt = new DateTime(date);
DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss");
dt.toString(dtf)
Вы можете использовать класс форматера:
final DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss")
.withZone(DateTimeZone.UTC);
System.out.println(DateTime.now().toString(formatter));
так как я использую API joda: ergo, DateTimeFormatter отправляется из org.joda.time.format.DateTimeFormatter:
String dateTime = "02-13-2017 18:20:30";
// Format for input
DateTimeFormatter dtf = DateTimeFormat.forPattern("MM-dd-yyyy HH:mm:ss");
// Parsing the date
DateTime jodatime = dtf.parseDateTime(dateTime);
System.out.println(jodatime );
DateTimeFormatterOBJECT=DateTimeFormatter.ofPattern("DD/MMM/YYYY HH//MM/SS");
String MyDateAndTime= LocalDate.now().format(DateTimeFormatterOBJECT);