Home > OS >  How to print UTC or GMT using SimpleDateFormat?
How to print UTC or GMT using SimpleDateFormat?

Time:01-11

I am trying to print a date in this format:

2023-01-11 09:25:52 UTC

But when I use date format:

yyyy-MM-dd HH:mm:ss Z

I get:

2023-01-11 09:29:25  0100

CodePudding user response:

Use a lowercase z instead of Z to get the offset instead of the id. And you have to set the time zone using simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC")).

Example:

Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z");
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
System.out.println(simpleDateFormat.format(date)); // 2023-01-11 08:41:17 UTC

CodePudding user response:

If you create an instance of simpleDateFormat with yyyy-MM-dd HH:mm:ss Z date format is incorrect change to capital Z to small z,

then it works as expected.

2023-01-11 09:25:52 UTC

  • Related