Class ISO8601Converter
Converts between ISO 8601 Strings and
Calendar
with millisecond resolution.
public sealed class ISO8601Converter
- Inheritance
-
ISO8601Converter
- Inherited Members
Methods
Parse(string)
Converts an ISO 8601 string to an XMPDateTime
.
public static XMPDateTime Parse(string iso8601String)
Parameters
iso8601String
stringa date string that is ISO 8601 conform.
Returns
- XMPDateTime
Returns a
XMPDateTime
.
Remarks
Converts an ISO 8601 string to an XMPDateTime
.
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.
Parse(string, XMPDateTime)
public static XMPDateTime Parse(string iso8601String, XMPDateTime binValue)
Parameters
iso8601String
stringa date string that is ISO 8601 conform.
binValue
XMPDateTimean existing XMPDateTime to set with the parsed date
Returns
- XMPDateTime
Returns an XMPDateTime-object containing the ISO8601-date.
Render(XMPDateTime)
Converts a XMPDateTime
into an ISO 8601 string.
public static string Render(XMPDateTime dateTime)
Parameters
dateTime
XMPDateTimean XMPDateTime-object.
Returns
- string
Returns an ISO 8601 string.
Remarks
Converts a XMPDateTime
into 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.