formatDurationISO()
methodformatDurationISO()
is a DurationFormatUtils
class that is used to convert the time gap in milliseconds to ISO 8601
period format.
DurationFormatUtils
The definition of DurationFormatUtils
can be found in the Apache Commons Lang
package, which we can add to the Maven project by adding the following dependency to the pom.xml
file.
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
For other versions of the
commons-lang
package, refer to the Maven Repository.
You can import the DurationFormatUtils
class as follows.
import org.apache.commons.lang3.time.DurationFormatUtils;
public static String formatDurationISO(final long durationMillis)
final long durationMillis
: The time gap in milliseconds to format.This method returns the formatted duration.
The code below shows how the formatDurationISO()
works in Java.
import org.apache.commons.lang3.time.DurationFormatUtils;public class Main{public static void main(String[] args) {// Example 1long durationMillis = 1234542;System.out.printf("DurationFormatUtils.formatDurationISO(%s) = %s", durationMillis, DurationFormatUtils.formatDurationISO(durationMillis));System.out.println();// Example 2durationMillis = 0;System.out.printf("DurationFormatUtils.formatDurationISO(%s) = %s", durationMillis, DurationFormatUtils.formatDurationISO(durationMillis));System.out.println();}}
The output of the code will be as follows:
DurationFormatUtils.formatDurationISO(1234542) = P0Y0M0DT0H20M34.542S
DurationFormatUtils.formatDurationISO(0) = P0Y0M0DT0H0M0.000S
duration in milliseconds - 1234542
The method returns P0Y0M0DT0H20M34.542S
, i.e., the formatted duration in milliseconds to ISO 8601
period format.
start milliseconds - 0
end milliseconds - 12321
The method returns P0Y0M0DT0H0M12.321S
, i.e., the formatted duration in milliseconds to ISO 8601
period format.