Преобразование строковой даты UTC в дату Java: методы и примеры

Чтобы преобразовать строку даты в формате UTC в объект Java Date, вы можете использовать несколько методов. Вот несколько вариантов:

  1. Использование SimpleDateFormat:

    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    public class Main {
    public static void main(String[] args) {
        String utcDate = "2024-01-01T12:34:56Z";
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
        dateFormat.setTimeZone(java.util.TimeZone.getTimeZone("UTC"));
        try {
            Date javaDate = dateFormat.parse(utcDate);
            System.out.println(javaDate);
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
    }
  2. Использование DateTimeFormatter (Java 8 или более поздней версии):

    import java.time.LocalDateTime;
    import java.time.ZoneOffset;
    import java.time.format.DateTimeFormatter;
    public class Main {
    public static void main(String[] args) {
        String utcDate = "2024-01-01T12:34:56Z";
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'");
        LocalDateTime dateTime = LocalDateTime.parse(utcDate, formatter);
        Date javaDate = Date.from(dateTime.toInstant(ZoneOffset.UTC));
        System.out.println(javaDate);
    }
    }
  3. Использование Instant (Java 8 или более поздней версии):

    import java.time.Instant;
    public class Main {
    public static void main(String[] args) {
        String utcDate = "2024-01-01T12:34:56Z";
        Instant instant = Instant.parse(utcDate);
        Date javaDate = Date.from(instant);
        System.out.println(javaDate);
    }
    }