我要在网页上显示一个国外的时间,具体是怎么实现的在这儿就不叨扰大家了,在这儿写一个demo:
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.TimeZone;public class TimeTest { public static void main(String args[]) { Calendar cJapan=new GregorianCalendar(TimeZone.getTimeZone("Egypt"));
System.out.println(cJapan.getTime());
}}
我想问的是我这儿打印出来的为什么还是本地时间!

解决方案 »

  1.   


    main方法该外
    Calendar cJapan=new GregorianCalendar(TimeZone.getTimeZone("Egypt"));
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    sdf.setCalendar(cJapan);
    System.out.println(sdf.format(cJapan.getTime())); 
      

  2.   

    两外根据Calendar得api解释gettime为:
    返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。
    和时区没有任何瓜葛。
      

  3.   

    因为你指定了TimeZone. 
    先了解TimeZone, 你就知道怎么回事了. 
    (时区)
      

  4.   

    Calendar是抽象类,必须调用它的方法 getInstance()才能创建它的实例,而不能通过new来创建;所以你那里设置的埃及的时区时间没用。