您如何获得C当前语言环境的格式化日期和时间?
-
03-10-2019 - |
题
我应该打电话给什么C函数,以获取执行程序的场所的格式化日期和时间?
我问这个问题,因为我使用Clamav守护程序API遇到了问题。这 VERSION
命令返回最新病毒定义的日期和时间,但是该代码使用调用 ctime
格式化。据我所知 ctime
不根据当前语言环境格式化日期时间,并在一周的几天和返回的字符串中使用英语缩写。这会导致问题作为使用Clamav API的Java程序 做 尊重当前的语言环境,因此期望每周和月份的名字具有当地的缩写。
DateTime格式需要与由 ctime:
www mmm dd HH:MM:SS yyyy
www是工作日,毫米,在月份的月份,每月的DD,HH:MM:SS的时间和Yyyy年度。
我可以重写Java程序以始终假设英语日期,但是我很高兴向Clamav提交补丁,因为这似乎是我身边的错误。
解决方案
strftime("%c", ...
应该为您提供当前语言环境的首选日期和时间表示。或(仍然与 strftime
)你可以效仿 ctime
的格式,但 %b
对于当前的月球月份缩写, %a
对于当前的倒数工作日缩写,依此类推。
不隶属于 StackOverflow