【问题标题】:EST and EDT time Return GMT time in java [duplicate]EST和EDT时间在java中返回GMT时间[重复]
【发布时间】:2017-07-11 13:55:51
【问题描述】:

当我表演时:

TimeZone.setDefault(TimeZone.getTimeZone("EDT"));

TimeZone.setDefault(TimeZone.getTimeZone("EST"));

并获取时区:

System.out.println(TimeZone.getDefault());

我在格林威治标准时间获得时间。 或者,如果您能告诉我我可以传递的全名是什么,而不是 EST 和 EDT 等缩写名称。全名如“America/New-York”。

我想显示 EST 时间。

【问题讨论】:

    标签: java


    【解决方案1】:

    您可以尝试使用America/New_York设置时区:

    TimeZone.setDefault(TimeZone.getTimeZone("America/New_York"));
    System.out.println(TimeZone.getDefault()); 
    

    打印出来:

    sun.util.calendar.ZoneInfo[id="America/New_York",offset=-18000000,dstSavings=3600000,useDaylight=true,transitions=235,lastRule=java.util.SimpleTimeZone[id=America/New_York,offset=-18000000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=2,startDay=8,startDayOfWeek=1,startTime=7200000,startTimeMode=0,endMode=3,endMonth=10,endDay=1,endDayOfWeek=1,endTime=7200000,endTimeMode=0]]
    

    也许是一个旁注:

    您可以使用以下方式列出所有可用的时区 ID:

    String[] ids = TimeZone.getAvailableIDs();
    for (String id : ids) {
        System.out.println(TimeZone.getTimeZone(id).getID());
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-15
      • 2011-07-26
      • 2023-03-20
      • 2016-08-31
      相关资源
      最近更新 更多