windows - 获取 Windows 长时间格式

标签 windows

我正在尝试在 Windows 中获取长时间格式(例如“hh:mm:ss tt”)。我可以获得这样的短时间格式:

GetLocaleInfoEx(NULL, LOCALE_STIMEFORMAT, format, 100);

我似乎无法为 LOCALE_LTIMEFORMAT 或类似的东西找到常量。我可以得到短时间、短日期和长日期,但是如何查询当前用户的长时间格式?

最佳答案

据我所知,Windows 通过 LOCALE_STIMEFORMAT(设置为类似于“hh:mm:ss”)定义“长”时间格式,将短时间定义为 LOCALE_SSHORTTIME (根据 MSDN,它对 Windows 7 及更高版本有效)。

这是否符合您的发现,即它是否符合“区域和语言控制面板”项中的用户偏好?

对于 t 说明符,如果它没有包含在语言环境格式中,那么您要么总是使用自定义格式(如 gbjbaanb 所说),要么检查格式字符串ttt 的存在,如果不存在,请自行添加(不过,对于期望 tt 的文化,这可能会导致奇怪的结果时间,例如)。但这不是必需的,因为语言环境使用的时间格式负责生成有意义的时间字符串(例如,区分上午和下午)。

关于windows - 获取 Windows 长时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24109295/

相关文章:

windows - Octopress博客部署错误 'rake aborted! No such file or directory - git remote -v'

c - Windows 弹出窗口:X.exe 已停止工作 (Code::Blocks)

php - 为什么不能使用 PDO 访问特定的数据库,但可以使用没有 DBname 的 mysqli? (使用开发服务器/phpmyadmin)?

python - 通过命令行获取信息提示

windows - 新电脑,git pull origin 要求输入密码

windows - Windows 上的 Meteor 更新下载失败

windows - Windbg:中断定时器/调度程序中断并打印 EIP

javascript - 您可以使用 JavaScript 进行桌面开发吗?

windows - 是否有任何解决方案可以使用带有 Flutter 桌面的笔记本电脑相机拍照?

c++ - 在 C++ 中每 30 秒检查一次进程