确定一周的哪一天开始

时间:2012-07-05 19:26:16

标签: c date

如何在当前区域设置中确定一周的哪一天?我需要在C中使用它,大概是通过<time.h>标题。感谢。

1 个答案:

答案 0 :(得分:0)

区域设置不包含该信息。这是因为“一周的第一天”意味着取决于应用程序(在每个应用程序上),而不是在计算机上。

在我工作的地方,有些应用程序将星期一视为一周的第一天,其他应用程序将星期日视为一周的第一天。这里的挂历都是星期天作为第一天;制造日历通常使用星期一。


在Windows下,使用GetLocaleInfo(),但可以在运行时更改区域设置。它可以通过Windows API进行设置。 GetLocaleInfoEx()有更详细的文档。看起来SetLocaleInfo()可以独立于其他语言环境设置更改一周的第一天。

在Linux下,可以在locale实用程序中识别一周的第一天。 (man 5 localelocale docs online。搜索“LC_TIME”。)它被记录为符合POSIX.2,ISO / IEC 14652。

$ locale day
Sunday;Monday;Tuesday;Wednesday;Thursday;Friday;Saturday

我所在地区的第一天是星期天。

我还没有找到系统调用或库调用。我没有方便的源代码。

相关问题