import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;

public class Main {
	public static void main(String[] args) {
		long timestamp = (long) (1627065646.444 * 1000);

		Instant instant = Instant.ofEpochMilli(timestamp);
		System.out.println(instant);

		ZonedDateTime zdt = instant.atZone(ZoneOffset.UTC);
		LocalDateTime ldt = zdt.toLocalDateTime();
		System.out.println(ldt);

		// A custom format
		DateTimeFormatter dtf = DateTimeFormatter.ofPattern("M/d/u h:m:s a", Locale.ENGLISH);
		String formatted = dtf.format(zdt);
		System.out.println(formatted);
	}
}