• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

About timezones!

 
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all,

I have been working on timezones and timezone conversions for the past two days and havent been able to understand some of the fundamentals. Some of these may be a bit trivial!

1. I have read that Calendar object is Time zone dependent and Date object isnt? I am not really convinced with it. What is the reality?

2. Is time in millis since epoch, Time zone dependent? (Both calendar's getTimeInMillis() and date's getTime()).

3. In whatever Time zone I have my Calendar object in, when I use the getTime() method to get a Date object, the Date object displays time in the system default time zone.

4. I need to have a method which can take time in millis in GMT and return me a GMT Calendar/Date, irrespective of what timezone the program is running in and vice versa. How do I go about it? My tries have led to a lot of Time Zone conversions to my local TimeZone.

Any suggestions on this would be great.

Thanks n Regards,
Naveen
 
Marshal
Posts: 28193
95
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
A lot of your answers could have easily been answered by reading the API documentation. For example, Date's getTime() method is described like this:

Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object.

That answers #2 directly, it's based on a specific time zone. And the answer for #3 follows directly from that. But you'll observe that Calendar has getTimeZone() and setTimeZone() method, which strongly suggests that a Calendar has a time zone attribute.

I don't know what you have tried. But for your description I would just do this:Also, if you want to format a Date, or a Calendar, in a specific time zone then note that SimpleDateFormat also has a setTimeZone() method; it will convert timestamps to your local time zone if you don't tell it otherwise. And yes, you should be using SimpleDateFormat to format timestamps instead of relying on the toString() method of Date and Calendar.
 
naveen chinthakunta
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Paul!

I am still a bit unclear about my first question. Is Date Time-Zone dependent? I am not quite able to understand the behaviour of this piece of code.



OUTPUT :
Calendar stamp -> 2006-07-14 16:12:06.916 GMT
Date stamp -> Fri Jul 14 21:42:06 IST 2006

How is my Date object auto-converted to the default TimeZone?

Thanks n Regards,
Naveen
 
Don't get me started about those stupid light bulbs.
reply
    Bookmark Topic Watch Topic
  • New Topic