0

When i perform :

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

or

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

and get the time zone :

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

I get time in GMT. Or if you can tell me what is the full name i can pass instead of the abbreviated names like EST and EDT. Full name like "AMerica/New-York".

I want to display the EST time.

Coder17
  • 767
  • 4
  • 11
  • 30

1 Answers1

0

You can try setting the time zone using America/New_York:

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

This prints:

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]]

Perhaps a side note:

You can list all available timezone id's using:

String[] ids = TimeZone.getAvailableIDs();
for (String id : ids) {
    System.out.println(TimeZone.getTimeZone(id).getID());
}
eol
  • 23,236
  • 5
  • 46
  • 64