Package com.itextpdf.kernel.xmp.impl
Class ISO8601Converter
java.lang.Object
com.itextpdf.kernel.xmp.impl.ISO8601Converter
Converts between ISO 8601 Strings and
Calendar with millisecond resolution.
- Since:
- 16.02.2006
-
Method Summary
Modifier and TypeMethodDescriptionstatic XMPDateTimeConverts an ISO 8601 string to anXMPDateTime.static XMPDateTimeparse(String iso8601String, XMPDateTime binValue) static Stringrender(XMPDateTime dateTime) Converts aCalendarinto an ISO 8601 string.
-
Method Details
-
parse
Converts an ISO 8601 string to anXMPDateTime. Parse a date according to ISO 8601 and http://www.w3.org/TR/NOTE-datetime:- YYYY
- YYYY-MM
- YYYY-MM-DD
- YYYY-MM-DDThh:mmTZD
- YYYY-MM-DDThh:mm:ssTZD
- YYYY-MM-DDThh:mm:ss.sTZD
- YYYY = four-digit year
- MM = two-digit month (01=January, etc.)
- DD = two-digit day of month (01 through 31)
- hh = two digits of hour (00 through 23)
- mm = two digits of minute (00 through 59)
- ss = two digits of second (00 through 59)
- s = one or more digits representing a decimal fraction of a second
- TZD = time zone designator (Z or +hh:mm or -hh:mm)
Note: Tolerate missing TZD, assume is UTC. Photoshop 8 writes dates like this for exif:GPSTimeStamp.
Note: DOES NOT APPLY ANYMORE. Tolerate missing date portion, in case someone foolishly writes a time-only value that way.- Parameters:
-
iso8601String- a date string that is ISO 8601 conform. - Returns:
-
Returns a
Calendar. - Throws:
-
XMPException- Is thrown when the string is non-conform.
-
parse
- Parameters:
-
iso8601String- a date string that is ISO 8601 conform. -
binValue- an existing XMPDateTime to set with the parsed date - Returns:
- Returns an XMPDateTime-object containing the ISO8601-date.
- Throws:
-
XMPException- Is thrown when the string is non-conform.
-
render
Converts aCalendarinto an ISO 8601 string. Format a date according to ISO 8601 and http://www.w3.org/TR/NOTE-datetime:- YYYY
- YYYY-MM
- YYYY-MM-DD
- YYYY-MM-DDThh:mmTZD
- YYYY-MM-DDThh:mm:ssTZD
- YYYY-MM-DDThh:mm:ss.sTZD
- YYYY = four-digit year
- MM = two-digit month (01=January, etc.)
- DD = two-digit day of month (01 through 31)
- hh = two digits of hour (00 through 23)
- mm = two digits of minute (00 through 59)
- ss = two digits of second (00 through 59)
- s = one or more digits representing a decimal fraction of a second
- TZD = time zone designator (Z or +hh:mm or -hh:mm)
Note: ISO 8601 does not seem to allow years less than 1000 or greater than 9999. We allow any year, even negative ones. The year is formatted as "%.4d".
Note: Fix for bug 1269463 (silently fix out of range values) included in parsing. The quasi-bogus "time only" values from Photoshop CS are not supported.
- Parameters:
-
dateTime- an XMPDateTime-object. - Returns:
- Returns an ISO 8601 string.
-