Man page - tzfile(5)

Packages contains this manual

Available languages:

en fr es ja zh_TW zh_CN de

Manual

TZFILE

NAME
SYNOPSIS
DESCRIPTION
SEE ALSO


NAME

tzfile - 時 區 資 訊

SYNOPSIS

#include <tzfile.h>

DESCRIPTION

時 區 資 訊 檔 案 被 tzset(3) 使 用 , 其 開 頭 為 特 徵 字 元 "TZif", 以 此 標 示 該 檔 案 為 時 區 資 訊 檔 案 , 隨 後 六 個 位 元 組 保 留 未 用 . 接 下 來 是 六 個 "標 準 "位 元 組 順 序 (高 位 在 前 )的 四 位 元 組 long 型 別 值 , 按 順 序 描 述 如 下 :
tzh_ttisgmtcnt

儲 存 在 檔 案 中 的 UTC/local指 示 器 數 目 .

tzh_ttisstdcnt

儲 存 在 檔 案 中 的 standard/wall指 示 器 數 目 .

tzh_leapcnt

其 值 儲 存 在 檔 案 中 的 leap second的 數 目

tzh_timecnt

其 值 儲 存 在 檔 案 中 的 "變 化 時 間 "數 目

tzh_typecnt

其 值 儲 存 在 檔 案 中 的 "本 地 時 間 型 別 "數 目 (非 零 !)

tzh_charcnt

儲 存 在 檔 案 中 的 "時 區 簡 寫 符 "數 目

跟 在 上 面 這 些 頭 部 後 的 是 tzh_timecnt 個 "標 準 "位 元 組 順 序 的 四 字 節 long 型 別 值 , 以 升 序 排 序 . 每 個 值 均 作 為 一 個 變 化 時 間 (就 像 time (2) 的 返 回 ), 系 統 依 賴 這 些 值 來 計 算 本 地 時 間 變 化 . 而 在 此 之 後 的 是 tzh_timecnt unsigned char 型 別 的 一 位 元 組 值 , 這 些 值 指 出 了 檔 案 中 描 述 的 多 種 "本 地 時 間 "型 別 中 哪 一 個 與 具 有 相 同 索 引 的 變 化 時 間 相 關 . 這 些 值 可 作 為 ttinfo 結 構 陣 列 的 索 引 . 而 ttinfo 結 構 在 檔 案 中 隨 後 就 有 定 義 , 描 述 如 下 :

struct ttinfo {

long

tt_gmtoff;

int

tt_isdst;

unsigned int

tt_abbrind;

};

結 構 包 括 一 個 "標 準 "位 元 組 順 序 的 四 位 元 組 long 型 別 值 tt_gmtoff, 以 及 一 個 一 位 元 組 的 tt_isdst 和 一 個 一 位 元 組 的 tt_abbrind. 在 每 個 結 構 裡 , tt_gmtoff 給 出 了 要 被 加 到 UTC的 時 間 , 以 秒 為 單 位 , tt_isdst 表 明 tm_isdst 是 否 可 透 過 localtime (3) 設 定 , 而 tt_abbrind 可 作 為 時 區 簡 寫 符 的 陣 列 索 引 , 該 陣 列 在 檔 案 中 跟 在 ttinfo 結 構 後 面 .

這 樣 就 有 tzh_leapcnt 個 標 準 位 元 組 順 序 的 四 位 元 組 對 , 每 個 四 位 元 組 對 的 第 一 個 值 給 出 一 個 leap second發 生 的 時 間 , 就 如 time(2) 的 返 回 ; 每 個 四 位 元 組 對 的 第 二 個 值 給 出 給 定 時 間 之 後 所 實 現 的 總 的 leap second數 . 四 位 元 組 對 按 時 間 的 升 序 排 序 .

同 樣 有 tzh_ttisstdcnt 個 standard/wall指 示 器 , 每 個 儲 存 了 一 個 一 位 元 組 值 ; 這 些 指 示 器 指 出 了 變 化 時 間 (與 本 地 時 間 型 別 相 關 )是 否 被 說 明 為 standard time或 者 wall clock time, 以 及 當 一 個 時 區 檔 案 被 用 於 處 理 POSIX 格 式 時 區 環 境 變 數 時 是 否 使 用 變 化 時 間 .

最 後 , 有 tzh_ttisgmtcnt 個 UTC/local指 示 器 , 每 個 儲 存 了 一 個 一 位 元 組 值 ; 這 些 指 示 器 指 出 了 變 化 時 間 (與 本 地 時 間 型 別 相 關 )是 否 被 說 明 為 UTC 或 者 local time, 以 及 當 一 個 時 區 檔 案 被 用 於 處 理 POSIX格 式 時 區 環 境 變 數 時 是 否 使 用 變 化 時 間 .

如 果 tzh_timecnt 等 於 零 或 者 時 間 引 數 比 檔 案 記 錄 的 第 一 個 變 化 時 間 小 的 話 , Localtime 就 使 用 檔 案 中 的 第 一 個 標 準 時 間 ttinfo, 或 者 在 沒 有 標 準 時 間 結 構 是 就 直 接 使 用 第 一 個 ttinfo 結 構 .

SEE ALSO

newctime(3)

本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。
中 文 man 手 冊 頁 計 劃 : https://github.com/man-pages-zh/manpages-zh