diff --git a/fmt/fmt_iso8601.3 b/fmt/fmt_iso8601.3 new file mode 100644 index 0000000..ecbc7a5 --- /dev/null +++ b/fmt/fmt_iso8601.3 @@ -0,0 +1,18 @@ +.TH fmt_iso8601 3 +.SH NAME +fmt_iso8601 \- write a date in ASCII conforming to ISO-8601 +.SH SYNTAX +.B #include + +size_t \fBfmt_iso8601\fP(char *\fIdest\fR,time_t \fIsource\fR); +.SH DESCRIPTION +fmt_iso8601 writes a date in ASCII representation as ISO-8601 defines it: +"2014-05-27T19:22:16Z". ISO-8601 also allows to store a sub-second part +and a time zone, but fmt_iso8601 does not support that. + +fmt_iso8601 does not append \\0. + +If \fIdest\fR equals FMT_LEN (i.e. is zero), fmt_iso8601 returns the number +of bytes it would have written. + +The return value of fmt_iso8601 is 20 until Jan 1st 10000. diff --git a/scan/scan_iso8601.3 b/scan/scan_iso8601.3 new file mode 100644 index 0000000..914c8af --- /dev/null +++ b/scan/scan_iso8601.3 @@ -0,0 +1,17 @@ +.TH scan_iso8601 3 +.SH NAME +scan_iso8601 \- parse an ISO-8601 timestamp +.SH SYNTAX +.B #include + +size_t \fBscan_iso8601\fP(const char *\fIsrc\fR,struct timespec *\fIdest\fR); +.SH DESCRIPTION +scan_iso8601 parses a timestamp as defined in ISO-8601 into a struct +timespec. It returns the number of bytes read from \fIsrc\fR (0 for +parse error). + +scan_iso8601 supports input timestamps in time zones other than UTC +even though fmt_iso8601 does not. Note that the returned time_t is +always in UTC, even if a local time was given. +.SH "SEE ALSO" +fmt_iso8601(3)