153 lines
4.9 KiB
Text
153 lines
4.9 KiB
Text
|
NAME
|
||
|
|
||
|
strftime - format date and time
|
||
|
|
||
|
SYNOPSIS
|
||
|
#include <sys/types.h>
|
||
|
#include <time.h>
|
||
|
|
||
|
size_t strftime(buf, maxsize, format, timeptr)
|
||
|
char *buf;
|
||
|
size_t maxsize;
|
||
|
const char *format;
|
||
|
const struct tm *timeptr
|
||
|
|
||
|
cc ... -ltz
|
||
|
|
||
|
DESCRIPTION
|
||
|
The strftime function formats the information from timeptr
|
||
|
into the buffer buf according to the string pointed to by
|
||
|
format.
|
||
|
|
||
|
The format string consists of zero or more conversion
|
||
|
specifications and ordinary characters. All ordinary
|
||
|
characters are copied directly into the buffer. A
|
||
|
conversion specification consists of a percent sign and one
|
||
|
other character.
|
||
|
|
||
|
No more than maxsize characters are be placed into the
|
||
|
array. If the total number of resulting characters,
|
||
|
including the terminating null character, is not more than
|
||
|
maxsize, strftime returns the number of characters in the
|
||
|
array, not counting the terminating null. Otherwise, zero
|
||
|
is returned.
|
||
|
|
||
|
Each conversion specification is replaced by the characters
|
||
|
as follows which are then copied into the buffer.
|
||
|
|
||
|
%A is replaced by the locale's full weekday name.
|
||
|
|
||
|
%a is replaced by the locale's abbreviated weekday name.
|
||
|
|
||
|
%B is replaced by the locale's full month name.
|
||
|
|
||
|
%b or %h
|
||
|
is replaced by the locale's abbreviated month name.
|
||
|
|
||
|
%C is replaced by the century (a year divided by 100 and
|
||
|
truncated to an integer) as a decimal number (00-99).
|
||
|
|
||
|
%c is replaced by the locale's appropriate date and time
|
||
|
representation.
|
||
|
|
||
|
%D is replaced by the date in the format %m/%d/%y.
|
||
|
|
||
|
%d is replaced by the day of the month as a decimal number
|
||
|
(01-31).
|
||
|
|
||
|
%e is replaced by the day of month as a decimal number
|
||
|
(1-31); single digits are preceded by a blank.
|
||
|
|
||
|
%F is replaced by the date in the format %Y-%m-%d.
|
||
|
|
||
|
%G is replaced by the ISO 8601 year with century as a
|
||
|
decimal number.
|
||
|
|
||
|
%g is replaced by the ISO 8601 year without century as a
|
||
|
decimal number (00-99).
|
||
|
|
||
|
%H is replaced by the hour (24-hour clock) as a decimal
|
||
|
number (00-23).
|
||
|
|
||
|
%I is replaced by the hour (12-hour clock) as a decimal
|
||
|
number (01-12).
|
||
|
|
||
|
%j is replaced by the day of the year as a decimal number
|
||
|
(001-366).
|
||
|
|
||
|
%k is replaced by the hour (24-hour clock) as a decimal
|
||
|
number (0-23); single digits are preceded by a blank.
|
||
|
|
||
|
%l is replaced by the hour (12-hour clock) as a decimal
|
||
|
number (1-12); single digits are preceded by a blank.
|
||
|
|
||
|
%M is replaced by the minute as a decimal number (00-59).
|
||
|
|
||
|
%m is replaced by the month as a decimal number (01-12).
|
||
|
|
||
|
%n is replaced by a newline.
|
||
|
|
||
|
%p is replaced by the locale's equivalent of either AM or
|
||
|
PM.
|
||
|
|
||
|
%R is replaced by the time in the format %H:%M.
|
||
|
|
||
|
%r is replaced by the locale's representation of 12-hour
|
||
|
clock time using AM/PM notation.
|
||
|
|
||
|
%S is replaced by the second as a decimal number (00-60).
|
||
|
|
||
|
%s is replaced by the number of seconds since the Epoch,
|
||
|
UTC (see mktime(3)).
|
||
|
|
||
|
%T is replaced by the time in the format %H:%M:%S.
|
||
|
|
||
|
%t is replaced by a tab.
|
||
|
|
||
|
%U is replaced by the week number of the year (Sunday as
|
||
|
the first day of the week) as a decimal number (00-53).
|
||
|
|
||
|
%u is replaced by the weekday (Monday as the first day of
|
||
|
the week) as a decimal number (1-7).
|
||
|
|
||
|
%V is replaced by the week number of the year (Monday as
|
||
|
the first day of the week) as a decimal number (01-53).
|
||
|
If the week containing January 1 has four or more days
|
||
|
in the new year, then it is week 1; otherwise it is
|
||
|
week 53 of the previous year, and the next week is week
|
||
|
1.
|
||
|
|
||
|
%W is replaced by the week number of the year (Monday as
|
||
|
the first day of the week) as a decimal number (00-53).
|
||
|
|
||
|
%w is replaced by the weekday (Sunday as the first day of
|
||
|
the week) as a decimal number (0-6).
|
||
|
|
||
|
%X is replaced by the locale's appropriate time
|
||
|
representation.
|
||
|
|
||
|
%x is replaced by the locale's appropriate date
|
||
|
representation.
|
||
|
|
||
|
%Y is replaced by the year with century as a decimal
|
||
|
number.
|
||
|
|
||
|
%y is replaced by the year without century as a decimal
|
||
|
number (00-99).
|
||
|
|
||
|
%Z is replaced by the time zone name, or by the empty
|
||
|
string if this is not determinable.
|
||
|
|
||
|
%z is replaced by the offset from UTC in the format +HHMM
|
||
|
or -HHMM as appropriate, with positive values
|
||
|
representing locations east of Greenwich, or by the
|
||
|
empty string if this is not determinable.
|
||
|
|
||
|
%% is replaced by a single %.
|
||
|
|
||
|
%+ is replaced by the date and time in date(1) format.
|
||
|
|
||
|
SEE ALSO
|
||
|
date(1), getenv(3), newctime(3), newtzset(3), time(2),
|
||
|
tzfile(5)
|