java.time
The java.util Date-Time API and their formatting API, SimpleDateFormat are outdated and error-prone. It is recommended to stop using them completely and switch to the modern Date-Time API*, released in March 2014 as part of Java SE 8 standard library.
The answer by Basil Bourque is correct but I would not use String replacement when DateTimeFormatter is capable enough to address this and much more.
Demo:
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Main {
    public static void main(String[] args) {
        String input = "2020-06-16 14:00:00";
        DateTimeFormatter dtfInput = DateTimeFormatter.ofPattern("u-M-d H:m:s", Locale.ENGLISH);
        LocalDateTime ldt = LocalDateTime.parse(input, dtfInput);
        ZonedDateTime zdtParis = ldt.atZone(ZoneId.of("Europe/Paris"));
        ZonedDateTime zdtUtc = zdtParis.withZoneSameInstant(ZoneId.of("Etc/UTC"));
        // Default format
        System.out.println(zdtUtc);
        // Custom format
        DateTimeFormatter dtfOutput = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss", Locale.ENGLISH);
        String output = dtfOutput.format(zdtUtc);
        System.out.println(output);
    }
}
Output:
2020-06-16T12:00Z[Etc/UTC]
2020-06-16 12:00:00
ONLINE DEMO
All in a single statement:
System.out.println(
        LocalDateTime
        .parse("2020-06-16 14:00:00", DateTimeFormatter.ofPattern("u-M-d H:m:s", Locale.ENGLISH))
        .atZone(ZoneId.of("Europe/Paris"))
        .withZoneSameInstant(ZoneId.of("Etc/UTC"))
        .format(DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss", Locale.ENGLISH))
);
ONLINE DEMO
Some important notes:
- You can use a single pattern, uuuu-MM-dd HH:mm:ssfor both of your input and output strings but I prefer usingu-M-d H:m:sfor parsing becauseuuuu-MM-dd HH:mm:sswill fail if you have a year in two digits, a month in single digit, a day-of-month in single digit etc. For parsing, a singleucan cater to both, two-digit and four-digit year representation. Similarly, a singleMcan cater to both one-digit and two-digit month. Similar is the case with other symbols.
- Here, you can use yinstead ofubut I preferutoy.
Learn more about the modern Date-Time API from Trail: Date Time.
* For any reason, if you have to stick to Java 6 or Java 7, you can use ThreeTen-Backport which backports most of the java.time functionality to Java 6 & 7. If you are working for an Android project and your Android API level is still not compliant with Java-8, check Java 8+ APIs available through desugaring and How to use ThreeTenABP in Android Project.