Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I get the current date and time in UTC or GMT in Java?

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?

like image 648
Behrang Avatar asked Nov 21 '08 13:11

Behrang


People also ask

How do you find the current date and time in UTC?

Use the toUTCString() method to get the current date and time in utc, e.g. new Date(). toUTCString() . The toUTCString method converts a date to a string using the UTC time zone.

Is Java date in UTC?

java. util. Date has no specific time zone, although its value is most commonly thought of in relation to UTC.

What is UTC date format in Java?

Date time with full zone information can be represented in the following formats. dd/MM/uuuu'T'HH:mm:ss:SSSXXXXX pattern. e.g. "03/08/2019T16:20:17:717+05:30" . MM/dd/yyyy'T'HH:mm:ss:SSS z pattern.

How can I get the current date and time in UTC or GMT in JavaScript?

JavaScript Date toUTCString() The toUTCString() method returns a date object as a string, according to UTC. Tip: The Universal Coordinated Time (UTC) is the time set by the World Time Standard. Note: UTC time is the same as GMT time.


1 Answers

java.util.Date has 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.Date is 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 within java.util.Date is 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 a SimpleDateFormat instance, 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.

like image 160
Jon Skeet Avatar answered Oct 23 '22 13:10

Jon Skeet