C语言中的Linux datetime / locale库

时间:2009-11-13 06:43:04

标签: c linux

我需要在Linux平台上的C中使用一个小型独立库,例如,当提供(2009,11,13)时将返回“星期五”。我希望它能识别语言环境,意思是用用户设置的语言返回日期和月份名称。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

你可以将mktime和strftime结合在一起来做到这一点:

char daybuf[20];
struct tm time_str;

time_str.tm_year = YEAR - 1900;
time_str.tm_mon = MONTH - 1;
time_str.tm_mday = DAY;
time_str.tm_hour = 0;
time_str.tm_min = 0;
time_str.tm_sec = 1;
time_str.tm_isdst = -1;
if (mktime(&time_str) != -1)
    strftime(daybuf, sizeof(daybuf), "%A", &time_str);