When I create a new Date object, it is initialized to the current time but in the local timezone. How can I get the current date and time in GMT?
When I create a new Date object, it is initialized to the current time
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
java.util.Datehas no specific time zone, although its value is most commonly thought of in relation to UTC. What makes you think it’s in local time?To be precise: the value within a
java.util.Dateis the number of milliseconds since the Unix epoch, which occurred at midnight January 1st 1970, UTC. The same epoch could also be described in other time zones, but the traditional description is in terms of UTC. As it’s a number of milliseconds since a fixed epoch, the value withinjava.util.Dateis the same around the world at any particular instant, regardless of local time zone.I suspect the problem is that you’re displaying it via an instance of Calendar which uses the local timezone, or possibly using
Date.toString()which also uses the local timezone, or aSimpleDateFormatinstance, which, by default, also uses local timezone.If this isn’t the problem, please post some sample code.
I would, however, recommend that you use Joda-Time anyway, which offers a much clearer API.