sql >> Databasteknik >  >> RDS >> PostgreSQL

Analys av datum med olika tidszoner

Om jag förstår det rätt måste du ställa in tidszonen på samma data/kalenderobjekt som du skriver ut. Så här:

private Locale locale = Locale.US;
private static final String[] tzStrings = {
    "America/New_York",
    "America/Chicago",
    "America/Denver",
    "America/Los_Angeles",
};

  Date now = new Date();
  for ( TimeZone z : zones) {
        DateFormat df = new SimpleDateFormat("K:mm a,z", locale);
        df.setTimeZone(z);
        String result = df.format(now);
        System.out.println(result); 
  }

om jag ställer in tidszonen till SimpleDateFormat fungerar det bra.

här är exempelkoden...

String date="05/19/2008 04:30 AM (EST)";
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy hh:mm aaa (z)");
TimeZone.setDefault(TimeZone.getTimeZone("PST"));
long millis = sdf.parse(date).getTime();
sdf.setTimeZone(TimeZone.getDefault());
System.out.println(sdf.format(new Date(millis)));


  1. PHPMailer skickar dubbla e-postmeddelanden

  2. Kolumnantal matchar inte värderäkning på rad 1 VendorError:1136

  3. Partitionsbeskärning baserad på kontrollbegränsning fungerar inte som förväntat

  4. Är xmlparserv2 från com.oracle.jdbc:ojdbc8 (v12.2.0.1) helt plötsligt korrupt?