#navi(contents-page-name): No such page: 日時

時間や日時を指定した書式に整形する・strftime

strftimeを使用すると指定した書式に時間や日付を整形し文字列に変換します。
以下にstrftimeのCサンプルコードと実行例を記します。

c-top.html is not found or not readable.

関連記事

strftimeの書式

strftimeの書式は以下の通りです。

strftimeのCサンプルコード

以下にstrftimeのCサンプルコードと実行例を記します。
&ref(): File not found: "strftime.c" at page "日時/時間や日時を書式に従って整形する・strftime"; (改行コードLF)

#include <stdio.h>
#include <time.h>

int main(void)
{
    char s[256] = {'\0'};
    time_t t;
    struct tm *ptm;

    t = time(NULL);
    ptm = localtime(&t);
    strftime(s, sizeof(s), "%Y/%m/%d %H:%M:%S", ptm);

    printf("%s\n", s);

    return 0;
}

上記の例は、現在の日時を取得しstrftimeでYYYY/MM/DD HH:MI:SSに整形して表示sています。
以下、実際にコンパイルし実行したときの出力です。

$ gcc strftime.c -o strftime
$ ./strftime 
2014/07/25 14:01:32

strftimeの日時整形書式

strftimeの3番目の引数である整形書式について以下に記します。
よく使うものをピックアップしました。
詳細はman strftime などで調べてみてください。

%y西暦の下2桁の年(yy)
%Y西暦(yyyy)
%m月(01~12)
%d10進数で月の日(01~31)
%e10進数で月の日(1~31)1桁の場合は先頭が空白文字
%H24時間制の時間を表す10進数(00~23)
%I12時間制の時間を表す10進数(01~12)
%M分(00~59)
%S秒(00~60)
%D"%m/%d/%y"と等価な日付表現
%F"%Y-%m-%d"と等価な日付表現
%T"%H:%M:%S"に等価な時刻表現
%u暦週の中の日の序数(1~7)月曜日は1
%j年間通した日(001~366)
%zUTCからの時差
%Zタイムゾーンの名前

以上、strftimeに関するCサンプルコードでした。

c-btm.html is not found or not readable.

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS