c - 时区文件到 POSIX 时区字符串

标签 c linux timezone

我们有一个嵌入式 Linux 系统,用户可以从系统的 tz 文件列表中设置时区(国家/地名、GMT+-n、UTC)或者时区/$TZ 可以直接在 POSIX 中设置。格式(EG CET-01:00:00CEST-02:00:00,M3.5.0/02:00:00,M10.5.0/03:00:00EST5EDT) 由远程服务器(不知道时区名称)。

无论哪个实体最后设置了时区(无论是人类还是远程服务器),我们都需要以 POSIX 格式将本地时区设置报告回远程服务器,最好是尽量减少说谎/捏造。

在我挽起袖子之前,戴上我的尖顶帽子,开始解析 tzfile手动格式化我认为值得询问是否有预先存在的函数/库或这样做的示例?

我已经搜索了标准库,但看不到任何专门执行此操作的内容。

最佳答案

tz 文件以时区 POSIX 格式结尾。我不知道是否有适用于它的标准库函数,但您只需寻找一个换行符,后跟一个字符串和文件末尾的另一个换行符。中间的字符串是 POSIX 格式的时区。

关于c - 时区文件到 POSIX 时区字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27387017/

相关文章:

C 对如何初始化和实现 pthread 互斥体和条件变量感到困惑

c - 如何在C中删除char指针数组

c - 哪些特定的优化标志负责优化变量

linux - 如何从 panic 中定位错误

c# - 是否有返回 TimeZone 或基于坐标的偏移量的函数?

Oracle TIMESTAMP WITH TIMEZONE 命名区域与偏移量

c - 全局初始化数组的未使用索引?

linux - 正在寻找 "des"二进制文件?

linux - 根据第一个字段加入 2 行

Java/乔达 : Get TimeZone from long name (Display Name)