Skip to content

Instantly share code, notes, and snippets.

@kristopherjohnson
Created July 31, 2013 18:20
Show Gist options
  • Star 37 You must be signed in to star a gist
  • Fork 10 You must be signed in to fork a gist
  • Save kristopherjohnson/6124652 to your computer and use it in GitHub Desktop.
Save kristopherjohnson/6124652 to your computer and use it in GitHub Desktop.
Methods for generating ISO 8601 timestamps in Java/Android
package net.kristopherjohnson.util;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
/**
* Methods for dealing with timestamps
*/
public class TimestampUtils {
/**
* Return an ISO 8601 combined date and time string for current date/time
*
* @return String with format "yyyy-MM-dd'T'HH:mm:ss'Z'"
*/
public static String getISO8601StringForCurrentDate() {
Date now = new Date();
return getISO8601StringForDate(now);
}
/**
* Return an ISO 8601 combined date and time string for specified date/time
*
* @param date
* Date
* @return String with format "yyyy-MM-dd'T'HH:mm:ss'Z'"
*/
private static String getISO8601StringForDate(Date date) {
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.US);
dateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
return dateFormat.format(date);
}
/**
* Private constructor: class cannot be instantiated
*/
private TimestampUtils() {
}
}
@antalakas
Copy link

Thanks!

@omervk
Copy link

omervk commented Jun 5, 2017

Note: getISO8601StringForCurrentDate only returns correct results if your machine is configured to UTC.

@wavyxu
Copy link

wavyxu commented May 27, 2018

Thanks!

@lajtmaN
Copy link

lajtmaN commented Apr 1, 2019

Here is a more recent way to do this:
DateTimeFormatter.ISO_DATE_TIME.format(LocalDateTime.now())

@taimoorgit
Copy link

Thanks. For some reason all the stackoverflow solutions are sooo inefficient. Annoying!

@marctatham
Copy link

just came here to say that all of these posts to say Thanks! could be an emoji
flies away 🚁

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment