<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link rel="previous" href="Netbuffer.html"> <link rel="next" href="Netencoding.html"> <link rel="Up" href="index.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of class attributes" rel=Appendix href="index_attributes.html"> <link title="Index of class methods" rel=Appendix href="index_methods.html"> <link title="Index of classes" rel=Appendix href="index_classes.html"> <link title="Index of class types" rel=Appendix href="index_class_types.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Index of module types" rel=Appendix href="index_module_types.html"> <link title="Uq_gtk" rel="Chapter" href="Uq_gtk.html"> <link title="Equeue" rel="Chapter" href="Equeue.html"> <link title="Unixqueue" rel="Chapter" href="Unixqueue.html"> <link title="Uq_engines" rel="Chapter" href="Uq_engines.html"> <link title="Uq_socks5" rel="Chapter" href="Uq_socks5.html"> <link title="Unixqueue_mt" rel="Chapter" href="Unixqueue_mt.html"> <link title="Equeue_intro" rel="Chapter" href="Equeue_intro.html"> <link title="Uq_ssl" rel="Chapter" href="Uq_ssl.html"> <link title="Uq_tcl" rel="Chapter" href="Uq_tcl.html"> <link title="Netcgi_common" rel="Chapter" href="Netcgi_common.html"> <link title="Netcgi" rel="Chapter" href="Netcgi.html"> <link title="Netcgi_ajp" rel="Chapter" href="Netcgi_ajp.html"> <link title="Netcgi_scgi" rel="Chapter" href="Netcgi_scgi.html"> <link title="Netcgi_cgi" rel="Chapter" href="Netcgi_cgi.html"> <link title="Netcgi_fcgi" rel="Chapter" href="Netcgi_fcgi.html"> <link title="Netcgi_dbi" rel="Chapter" href="Netcgi_dbi.html"> <link title="Netcgi1_compat" rel="Chapter" href="Netcgi1_compat.html"> <link title="Netcgi_test" rel="Chapter" href="Netcgi_test.html"> <link title="Netcgi_porting" rel="Chapter" href="Netcgi_porting.html"> <link title="Netcgi_plex" rel="Chapter" href="Netcgi_plex.html"> <link title="Http_client" rel="Chapter" href="Http_client.html"> <link title="Telnet_client" rel="Chapter" href="Telnet_client.html"> <link title="Ftp_data_endpoint" rel="Chapter" href="Ftp_data_endpoint.html"> <link title="Ftp_client" rel="Chapter" href="Ftp_client.html"> <link title="Nethttpd_types" rel="Chapter" href="Nethttpd_types.html"> <link title="Nethttpd_kernel" rel="Chapter" href="Nethttpd_kernel.html"> <link title="Nethttpd_reactor" rel="Chapter" href="Nethttpd_reactor.html"> <link title="Nethttpd_engine" rel="Chapter" href="Nethttpd_engine.html"> <link title="Nethttpd_services" rel="Chapter" href="Nethttpd_services.html"> <link title="Nethttpd_plex" rel="Chapter" href="Nethttpd_plex.html"> <link title="Nethttpd_intro" rel="Chapter" href="Nethttpd_intro.html"> <link title="Netplex_types" rel="Chapter" href="Netplex_types.html"> <link title="Netplex_mp" rel="Chapter" href="Netplex_mp.html"> <link title="Netplex_mt" rel="Chapter" href="Netplex_mt.html"> <link title="Netplex_log" rel="Chapter" href="Netplex_log.html"> <link title="Netplex_controller" rel="Chapter" href="Netplex_controller.html"> <link title="Netplex_container" rel="Chapter" href="Netplex_container.html"> <link title="Netplex_sockserv" rel="Chapter" href="Netplex_sockserv.html"> <link title="Netplex_workload" rel="Chapter" href="Netplex_workload.html"> <link title="Netplex_main" rel="Chapter" href="Netplex_main.html"> <link title="Netplex_config" rel="Chapter" href="Netplex_config.html"> <link title="Netplex_kit" rel="Chapter" href="Netplex_kit.html"> <link title="Rpc_netplex" rel="Chapter" href="Rpc_netplex.html"> <link title="Netplex_cenv" rel="Chapter" href="Netplex_cenv.html"> <link title="Netplex_intro" rel="Chapter" href="Netplex_intro.html"> <link title="Netshm" rel="Chapter" href="Netshm.html"> <link title="Netshm_data" rel="Chapter" href="Netshm_data.html"> <link title="Netshm_hashtbl" rel="Chapter" href="Netshm_hashtbl.html"> <link title="Netshm_array" rel="Chapter" href="Netshm_array.html"> <link title="Netshm_intro" rel="Chapter" href="Netshm_intro.html"> <link title="Netconversion" rel="Chapter" href="Netconversion.html"> <link title="Netchannels" rel="Chapter" href="Netchannels.html"> <link title="Netstream" rel="Chapter" href="Netstream.html"> <link title="Mimestring" rel="Chapter" href="Mimestring.html"> <link title="Netmime" rel="Chapter" href="Netmime.html"> <link title="Netsendmail" rel="Chapter" href="Netsendmail.html"> <link title="Neturl" rel="Chapter" href="Neturl.html"> <link title="Netaddress" rel="Chapter" href="Netaddress.html"> <link title="Netbuffer" rel="Chapter" href="Netbuffer.html"> <link title="Netdate" rel="Chapter" href="Netdate.html"> <link title="Netencoding" rel="Chapter" href="Netencoding.html"> <link title="Netulex" rel="Chapter" href="Netulex.html"> <link title="Netaccel" rel="Chapter" href="Netaccel.html"> <link title="Netaccel_link" rel="Chapter" href="Netaccel_link.html"> <link title="Nethtml" rel="Chapter" href="Nethtml.html"> <link title="Netstring_str" rel="Chapter" href="Netstring_str.html"> <link title="Netstring_pcre" rel="Chapter" href="Netstring_pcre.html"> <link title="Netstring_mt" rel="Chapter" href="Netstring_mt.html"> <link title="Netmappings" rel="Chapter" href="Netmappings.html"> <link title="Netaux" rel="Chapter" href="Netaux.html"> <link title="Nethttp" rel="Chapter" href="Nethttp.html"> <link title="Netchannels_tut" rel="Chapter" href="Netchannels_tut.html"> <link title="Netmime_tut" rel="Chapter" href="Netmime_tut.html"> <link title="Netsendmail_tut" rel="Chapter" href="Netsendmail_tut.html"> <link title="Netulex_tut" rel="Chapter" href="Netulex_tut.html"> <link title="Neturl_tut" rel="Chapter" href="Neturl_tut.html"> <link title="Netsys" rel="Chapter" href="Netsys.html"> <link title="Netpop" rel="Chapter" href="Netpop.html"> <link title="Rpc_auth_dh" rel="Chapter" href="Rpc_auth_dh.html"> <link title="Rpc_key_service" rel="Chapter" href="Rpc_key_service.html"> <link title="Rpc_time" rel="Chapter" href="Rpc_time.html"> <link title="Rpc_auth_local" rel="Chapter" href="Rpc_auth_local.html"> <link title="Rtypes" rel="Chapter" href="Rtypes.html"> <link title="Xdr" rel="Chapter" href="Xdr.html"> <link title="Rpc" rel="Chapter" href="Rpc.html"> <link title="Rpc_program" rel="Chapter" href="Rpc_program.html"> <link title="Rpc_portmapper_aux" rel="Chapter" href="Rpc_portmapper_aux.html"> <link title="Rpc_packer" rel="Chapter" href="Rpc_packer.html"> <link title="Rpc_transport" rel="Chapter" href="Rpc_transport.html"> <link title="Rpc_client" rel="Chapter" href="Rpc_client.html"> <link title="Rpc_simple_client" rel="Chapter" href="Rpc_simple_client.html"> <link title="Rpc_portmapper_clnt" rel="Chapter" href="Rpc_portmapper_clnt.html"> <link title="Rpc_portmapper" rel="Chapter" href="Rpc_portmapper.html"> <link title="Rpc_server" rel="Chapter" href="Rpc_server.html"> <link title="Rpc_auth_sys" rel="Chapter" href="Rpc_auth_sys.html"> <link title="Rpc_intro" rel="Chapter" href="Rpc_intro.html"> <link title="Rpc_mapping_ref" rel="Chapter" href="Rpc_mapping_ref.html"> <link title="Rpc_ssl" rel="Chapter" href="Rpc_ssl.html"> <link title="Rpc_xti_client" rel="Chapter" href="Rpc_xti_client.html"> <link title="Shell_sys" rel="Chapter" href="Shell_sys.html"> <link title="Shell" rel="Chapter" href="Shell.html"> <link title="Shell_uq" rel="Chapter" href="Shell_uq.html"> <link title="Shell_mt" rel="Chapter" href="Shell_mt.html"> <link title="Shell_intro" rel="Chapter" href="Shell_intro.html"> <link title="Netsmtp" rel="Chapter" href="Netsmtp.html"><title>Ocamlnet 2 Reference Manual : Netdate</title> </head> <body> <div class="navbar"><a href="Netbuffer.html">Previous</a> <a href="index.html">Up</a> <a href="Netencoding.html">Next</a> </div> <center><h1>Module <a href="type_Netdate.html">Netdate</a></h1></center> <br> <pre><span class="keyword">module</span> Netdate: <code class="code">sig</code> <a href="Netdate.html">..</a> <code class="code">end</code></pre>Support for common date/time parsing and formatting. Many routines refer to the epoch, which for Unix is 00:00:00 UTC, January 1, 1970.<br> <hr width="100%"> <br><code><span class="keyword">type</span> <a name="TYPEt"></a><code class="type"></code>t = {</code><table class="typetable"> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>year : <code class="type">int</code>;</code></td> <td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >complete year</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>month : <code class="type">int</code>;</code></td> <td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >1..12</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>day : <code class="type">int</code>;</code></td> <td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >1..31</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>hour : <code class="type">int</code>;</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>minute : <code class="type">int</code>;</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>second : <code class="type">int</code>;</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>zone : <code class="type">int</code>;</code></td> <td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >in minutes; 60 = UTC+0100</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> </tr> <tr> <td align="left" valign="top" > <code> </code></td> <td align="left" valign="top" > <code>week_day : <code class="type">int</code>;</code></td> <td class="typefieldcomment" align="left" valign="top" ><code>(*</code></td><td class="typefieldcomment" align="left" valign="top" >0 = sunday; -1 if not given</td><td class="typefieldcomment" align="left" valign="bottom" ><code>*)</code></td> </tr></table> } <pre><span class="keyword">val</span> <a name="VALlocalzone"></a>localzone : <code class="type">int</code></pre><div class="info"> The offset in minutes for the local time zone from the UTC<br> </div> <pre><span class="keyword">val</span> <a name="VALcreate"></a>create : <code class="type">?zone:int -> float -> <a href="Netdate.html#TYPEt">t</a></code></pre><div class="info"> Convert the time (seconds since the epoch) to a date/time record<br> </div> <pre><span class="keyword">val</span> <a name="VALparse"></a>parse : <code class="type">string -> <a href="Netdate.html#TYPEt">t</a></code></pre><div class="info"> Parse a string and return a date/time record<br> </div> <pre><span class="keyword">val</span> <a name="VALsince_epoch"></a>since_epoch : <code class="type"><a href="Netdate.html#TYPEt">t</a> -> float</code></pre><div class="info"> Convert a date/time record into the time (seconds since the epoch)<br> </div> <pre><span class="keyword">val</span> <a name="VALparse_epoch"></a>parse_epoch : <code class="type">string -> float</code></pre><div class="info"> Parse a string and return the time (seconds since the epoch<br> </div> <pre><span class="keyword">val</span> <a name="VALformat_to"></a>format_to : <code class="type"><a href="Netchannels.out_obj_channel.html">Netchannels.out_obj_channel</a> -> fmt:string -> <a href="Netdate.html#TYPEt">t</a> -> unit</code></pre><div class="info"> Format a date/time record according to the format string and outputs the resulting string to the channel. <p> The format string consists of zero or more conversion specifications and ordinary characters. All ordinary characters are output directly to the channel. A conversion specification consists of the '%' character and one other character. <p> The conversion specifications are: <p> <ul> <li><code class="code">%A</code>: full weekday name.</li> <li><code class="code">%a</code>: abbreviated weekday name.</li> <li><code class="code">%B</code>: full month name.</li> <li><code class="code">%b</code>: abbreviated month name.</li> <li><code class="code">%C</code>: (year / 100) as an integer; single digits are preceded by a zero.</li> <li><code class="code">%c</code>: equivalent to <code class="code">"%a %b %e %T %Y"</code>.</li> <li><code class="code">%D</code>: equivalent to <code class="code">"%m/%d/%y"</code>.</li> <li><code class="code">%d</code>: day of the month as an integer (01-31); single digits are preceded by a zero.</li> <li><code class="code">%e</code>: day of the month as an integer (1-31).</li> <li><code class="code">%H</code>: hour (24-hour clock) as an integer (00-23).</li> <li><code class="code">%h</code>: the same as %b.</li> <li><code class="code">%I</code>: hour (12-hour clock) as an integer (01-12).</li> <li><code class="code">%j</code>: day of the year as an integer (001-366).</li> <li><code class="code">%k</code>: hour (24-hour clock) as an integer (0-23); single digits are preceded by a blank.</li> <li><code class="code">%l</code>: hour (12-hour clock) as an integer (1-12); single digits are preceded by a blank.</li> <li><code class="code">%M</code>: minute as an integer (00-59).</li> <li><code class="code">%m</code>: month as an integer (01-12).</li> <li><code class="code">%n</code>: a newline.</li> <li><code class="code">%p</code>: either "AM" or "PM" as appropriate.</li> <li><code class="code">%P</code>: either "am" or "pm" as appropriate.</li> <li><code class="code">%R</code>: equivalent to <code class="code">"%H:%M"</code>.</li> <li><code class="code">%r</code>: equivalent to <code class="code">"%I:%M:%S %p"</code>.</li> <li><code class="code">%S</code>: second as an integer (00-60).</li> <li><code class="code">%T</code>: equivalent to <code class="code">"%H:%M:%S"</code>.</li> <li><code class="code">%t</code>: a tab.</li> <li><code class="code">%U</code>: week number of the year (Sunday as the first day of the week) as an integer (00-53).</li> <li><code class="code">%u</code> weekday (Monday as the first day of the week) as an integer (1-7).</li> <li><code class="code">%w</code>: weekday (Sunday as the first day of the week) as an integer (0-6).</li> <li><code class="code">%X</code>: representation of the time.</li> <li><code class="code">%x</code>: representation of the date.</li> <li><code class="code">%Y</code>: year with century as an integer.</li> <li><code class="code">%y</code>: year without century as an integer (00-99).</li> <li><code class="code">%z</code>: time zone offset from UTC; a leading plus sign stands for east of UTC, a minus sign for west of UTC, hours and minutes follow with two digits each and no delimiter between them (common form for RFC 822 date headers).</li> <li><code class="code">%%</code>: a `%' character. </li> </ul> <br> </div> <pre><span class="keyword">val</span> <a name="VALformat"></a>format : <code class="type">fmt:string -> <a href="Netdate.html#TYPEt">t</a> -> string</code></pre><div class="info"> Format a date/time record as a string<br> </div> <pre><span class="keyword">val</span> <a name="VALmk_mail_date"></a>mk_mail_date : <code class="type">?zone:int -> float -> string</code></pre><div class="info"> Convert the time (seconds since the epoch) to a date string that conforms to RFC 1123 (which updates RFC 822). <p> Example: <code class="code">"Sun, 06 Nov 1994 08:49:37 -0500"</code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALmk_usenet_date"></a>mk_usenet_date : <code class="type">?zone:int -> float -> string</code></pre><div class="info"> Convert the time (seconds since the epoch) to a date string that conforms to RFC 1036 (which obsoletes RFC 850). <p> Example: <code class="code">"Sunday, 06-Nov-94 08:49:37 -0500"</code>. <p> Note that this format has only two digits for the year.<br> </div> </body></html>