import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
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) {
		String strDate = "2021-08-20 14:17:43";
		DateTimeFormatter dtf = DateTimeFormatter.ofPattern("u-M-d H:m:s", Locale.ENGLISH);
		LocalDateTime ldt = LocalDateTime.parse(strDate, dtf);
		System.out.println(ldt);

		// Get the required Instant
		ZonedDateTime zdtUtc = ldt.atZone(ZoneOffset.UTC);
		ZonedDateTime zdtChicago = zdtUtc.withZoneSameInstant(ZoneId.of("America/Chicago"));
		Instant instant = zdtChicago.toInstant();
		System.out.println(instant);
	}
}