ISO8601
Utility class for converting between Java time objects and ISO 8601 date strings. All methods are static.
Two formats are supported:
- Extended:
YYYY-MM-DDThh:mm:ss.SSSTZD(e.g.2024-03-15T14:30:00.000+01:00) - Basic:
yyyyMMddHHmmss(e.g.20240315143000)
Date metadata fields in OpenKM property groups are stored and exchanged in the basic format yyyyMMddHHmmss. Use parseBasic and formatBasic when reading or writing those fields.
Methods
isExtended
Description:
| Method | Return values | Description |
|---|---|---|
|
isExtended(String value) |
boolean |
Returns |
Example:
boolean valid = ISO8601.isExtended("2024-03-15T14:30:00.000+01:00"); // true
boolean invalid = ISO8601.isExtended("20240315143000"); // false
parseExtended
Description:
| Method | Return values | Description |
|---|---|---|
|
parseExtended(String value) |
Calendar |
Parses an extended ISO 8601 string ( |
Example:
package com.openkm;
import com.openkm.util.ISO8601;
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
try {
Calendar cal = ISO8601.parseExtended("2024-03-15T14:30:00.000+01:00");
System.out.println(cal.getTime());
} catch (Exception e) {
e.printStackTrace();
}
}
}
formatExtended
Description:
| Method | Return values | Description |
|---|---|---|
|
formatExtended(Calendar value) |
String |
Formats a |
Example:
String iso = ISO8601.formatExtended(Calendar.getInstance());
System.out.println(iso); // "2024-03-15T14:30:00.000+01:00"
parseBasic
Description:
| Method | Return values | Description |
|---|---|---|
|
parseBasic(String value) |
Calendar |
Parses a basic ISO 8601 string in the format |
|
value: A date string in |
||
Example:
package com.openkm;
import com.openkm.util.ISO8601;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = ISO8601.parseBasic("20240315143000");
System.out.println(sdf.format(cal.getTime())); // "2024-03-15 14:30:00"
} catch (Exception e) {
e.printStackTrace();
}
}
}
formatBasic (Calendar)
Description:
| Method | Return values | Description |
|---|---|---|
|
formatBasic(Calendar value) |
String |
Formats a |
formatBasic (Date)
Description:
| Method | Return values | Description |
|---|---|---|
|
formatBasic(Date value) |
String |
Formats a |
Example:
package com.openkm;
import com.openkm.util.ISO8601;
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
try {
Calendar cal = Calendar.getInstance();
System.out.println(ISO8601.formatBasic(cal)); // "20240315143000"
System.out.println(ISO8601.formatBasic(cal.getTime())); // "20240315143000"
} catch (Exception e) {
e.printStackTrace();
}
}
}
printBasic
Description:
| Method | Return values | Description |
|---|---|---|
|
printBasic(String value) |
String |
Parses a basic ISO 8601 string ( |
Example:
String display = ISO8601.printBasic("20240315143000");
System.out.println(display); // "2024-03-15"