常用时区TimeZone转化代码

常用时区转化代码

 

package org.jerval.test;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;

public class Main {

    public static void main(String[] args) {
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm z");
        Date date = new Date();
        // List<String> list = Arrays.asList(TimeZone.getAvailableIDs());
        // Collections.sort(list);
        // for (String s:list) {
        // df.setTimeZone(TimeZone.getTimeZone(s));
        // System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        // }
        df.setTimeZone(TimeZone.getTimeZone("Asia/Tokyo"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        
        df.setTimeZone(TimeZone.getTimeZone("Europe/London"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        
        df.setTimeZone(TimeZone.getTimeZone("America/New_York"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Toronto"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Chicago"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Winnipeg"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Denver"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Edmonton"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        df.setTimeZone(TimeZone.getTimeZone("America/Vancouver"));
        System.out.println(df.getTimeZone().getID() + " : " + df.format(date));
        
    }

    private static void aaa() {
        // 1. 将系统当前时间转换成美国东部时间
        TimeZone timeZoneNY1 = TimeZone.getTimeZone("America/New_York");
        SimpleDateFormat outputFormat1 = new SimpleDateFormat("EEE MMM d HH:mm:ss Z yyyy", Locale.US);
        outputFormat1.setTimeZone(timeZoneNY1);
        Date date1 = new Date(System.currentTimeMillis());
        System.out.println(outputFormat1.format(date1));
        // 2. 将一个以字符串形式输入的北京时间转换成美国东部时间
        String inputDate = "2011-05-14 23:30:00";
        TimeZone timeZoneSH = TimeZone.getTimeZone("Asia/Shanghai");
        TimeZone timeZoneNY = TimeZone.getTimeZone("America/New_York");
        SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        inputFormat.setTimeZone(timeZoneSH);
        Date date = null;
        try {
            date = inputFormat.parse(inputDate);
        } catch (ParseException e) {
        }

        SimpleDateFormat outputFormat = new SimpleDateFormat("EEE MMM d HH:mm:ss Z yyyy", Locale.US);
        outputFormat.setTimeZone(timeZoneSH);
        System.out.println("Asia/Shanghai:" + outputFormat.format(date));
        outputFormat.setTimeZone(timeZoneNY);
        System.out.println("America/New_York:" + outputFormat.format(date));
    }

}

 

你可能感兴趣的:(timezone)