时间戳、城市时区与间隔参考 https://home.without202.com/journal/timestamp-and-city-time-reference 记录日期:2026-11-06 分类:使用参考 标签:home · Rust · TOML · 时间戳 · 城市时区 · 夏令时 从明确时刻、数字单位和固定偏移,到 IANA 城市对照、逐行报告、文件载入与纳秒间隔,集中说明时间工具的选择、格式和边界。 1. 先确定一个明确时刻 转换时间时,普通日期记得带上时区,例如 Z 或 +08:00。数字默认按位数识别秒和毫秒;早期毫秒时间戳或较大的秒时间戳,直接选择明确单位,避免歧义。结果时区可填写固定 UTC 偏移,格式 ±HH:MM,范围 -12:00 至 +14:00,支持 +05:30、+05:45 等分钟偏移。默认 +08:00,UTC 结果始终保留;选择只影响结果日期显示,不改变秒/毫秒时间戳或输入日期自带时区的含义,不自动处理夏令时。若结果日期超出公元 0000 至 9999 年,会提示调整偏移。「当前时间」仍按所选秒/毫秒单位填入,并沿用结果偏移。 单条转换、批量、时间间隔和城市对照的输入彼此独立。先确定自己要处理一个时刻、一份时间清单,还是两个时刻的差;修改一个区块不会替其他区块填入参数。本文的完整报告示例都是公开工具的独立示例,不是任何人的浏览器资料。 - 打开单条时间戳转换:https://home.without202.com/tools/timestamp - 回到综合工具参考:https://home.without202.com/journal/everyday-tools-reference#section-8 2. 同一时刻,按城市规则对照 展开「城市时区对照」,输入秒、毫秒或带时区的 RFC 3339 明确时刻,每行填写一个 IANA 名称,例如 Asia/Shanghai、Europe/London、America/New_York 或 Asia/Kathmandu。服务器按该日期的规则计算当地时间、UTC 偏移与缩写,包含夏令时。固定 UTC 偏移转换不自动套用这些规则,两种方式各自独立。 启用脚本后,可点击「当前时刻」填入当前 UTC 时刻,或用「1 月示例」「7 月示例」分别填入 2026-01-15T12:00:00Z 与 2026-07-15T12:00:00Z。按钮只修改本页时刻,保留已填写的城市列表、数字单位与报告格式,日期输入仍按自身时区解析;不会自动计算或新增浏览器资料。焦点回到时刻输入,仍需点击「对照城市时间」提交。手动修改后会清除填入提示。 填入会收起旧结果并中止本页对旧请求的等待,迟到响应不会重新显示。无脚本时这组按钮隐藏,原生表单仍可填写提交。从工具箱的「常见任务直达」选择「对照不同城市的同一时刻」,可进入城市对照区,输入保持空白,不自动填入当前时刻或发送计算请求。 「加入常见时区」提供 UTC 与上海、东京、首尔、新加坡、加尔各答、加德满都、迪拜、伦敦、巴黎、纽约、洛杉矶、悉尼、奥克兰的标识。先选择,再点击「加入列表」,只在当前原文末尾补一行,不改变时刻、单位或报告格式;选择本身不会使当前结果失效,也不发送请求。实际加入后旧结果失效,仍需明确计算。 如果已有相同标识(忽略首尾空白和大小写),或加入后会超过 12 个非空行、2 KB,显示提示并保留原文与现有结果;不会整理、移除未知项或改写其他重复行,不同别名仍视为不同标识。焦点回到列表,实际加入时光标在末尾;也可始终手动填写任意服务端支持的 IANA 名称。关闭脚本时选择区隐藏,原生输入和提交保留。 城市列表最多 12 个非空行、2 KB,按 LF 后的 UTF-8 字节数计。报告保留原始行号、输入顺序和重复行;未知名称独立报错,不影响其余行。文本或 TOML 都注明服务器 tzdata 版本。下面是 2026-07-15T12:00:00Z 对照上海、伦敦与纽约的 TOML 报告,生成时使用 2026e;规则更新后结果可能变化,历史资料也以数据库记录为准。 输入需要明确时区,不猜测没有偏移的当地日期,也不接受闰秒;小数秒最多 9 位,超出精度先明确调整。夏令时跳时期间,有些当地钟表时间不存在;回拨期间,同样的 01:30 可能属于两个不同时刻。例如纽约 2026-11-01T01:30:00-04:00 与 2026-11-01T01:30:00-05:00 相差一小时;携带偏移能明确要比较哪一次。极端年份边界可能超出城市转换的支持范围,此时会返回错误。 代码示例 · toml format_version = 1 kind = "city-timezones" tzdata_version = "2026e" utc = "2026-07-15T12:00:00+00:00" total = 3 succeeded = 3 failed = 0 [[rows]] line = 1 zone = "Asia/Shanghai" success = true local_time = "2026-07-15T20:00:00" utc_offset = "+08:00" abbreviation = "CST" [[rows]] line = 2 zone = "Europe/London" success = true local_time = "2026-07-15T13:00:00" utc_offset = "+01:00" abbreviation = "BST" [[rows]] line = 3 zone = "America/New_York" success = true local_time = "2026-07-15T08:00:00" utc_offset = "-04:00" abbreviation = "EDT" - 直达城市时区对照:https://home.without202.com/tools/timestamp#city-timezones - IANA 时区资料:https://www.iana.org/time-zones 3. 批量逐行转换并核对错误 时间戳工具可展开「批量转换时间戳」,每行输入一个秒或毫秒时间戳,或带时区的 RFC 3339 日期。最多 100 个非空行、10 KB,按统一为 LF 后的 UTF-8 字节数计算;每行最多 100 字节。空白行跳过,报告行号对应原始输入,重复行保留。为本批次选择统一数字单位与固定结果偏移;自动识别、年份范围及夏令时规则沿用单条转换,两个转换区的参数各自独立。 点击「生成批量报告」才向本站提交,逐行显示转换结果或失败原因;一个错误不会中断其他行,报告注明成功和失败数量,全失败也会明确标明。启用脚本可复制或下载完整报告,修改本批次输入或参数后旧结果失效;关闭脚本可提交并查看纯文本报告。单条「当前时间」只操作单条区,不会填入或提交批量内容。 批量时间转换的「报告格式」默认阅读文本,也可选择 TOML 结构化报告。TOML 包含 format_version = 1、数字单位 unit、固定偏移 display_offset、total/succeeded/failed 统计和 [[rows]] 数组。每项保留原始行号 line 与 success 状态;成功项提供整数 seconds/milliseconds、UTC 日期 utc 与目标日期 display_time,失败项只有错误原因 error,不填伪造的数值,不包含原始输入。 批量输入区会在本机实时显示非空行数与 LF 换行后的 UTF-8 字节数,并提示 100 行或 10 KB 超限。空白行跳过,重复时间分别计数;单行超过 100 字节会另作提示,整批在限内时,该行在报告中失败,其余行仍可继续转换。统计用于核对清单规模,不校验时间格式。文件只预览尚未载入时不计入当前统计;明确载入、撤销和页面恢复后会更新数字。统计不发送文字,点击生成报告才提交输入。 代码示例 · toml format_version = 1 unit = "milliseconds" display_offset = "+05:45" total = 3 succeeded = 2 failed = 1 [[rows]] line = 1 success = true seconds = -1 milliseconds = -1 utc = "1969-12-31T23:59:59.999+00:00" display_time = "1970-01-01T05:44:59.999+05:45" [[rows]] line = 3 success = false error = "无法识别。请输入秒或毫秒时间戳,或带时区的 RFC 3339 日期;支持公元 0000 至 9999 年。" [[rows]] line = 4 success = true seconds = 0 milliseconds = 0 utc = "1970-01-01T00:00:00+00:00" display_time = "1970-01-01T05:45:00+05:45" - 直达批量转换时间戳:https://home.without202.com/tools/timestamp#batch 4. 先在本机查看时间文件 启用脚本时,批量转换区还可展开「从时间清单文件载入」。文件限 UTF-8、10 KB、100 个非空行,按整行作为一个时间,不解析 CSV 列;重复行和空白行位置保留,转换报告仍按原始行号显示。选择文件只在浏览器读取,先查看再明确载入,可取消;编码、大小或行数超限时输入框保持原样。载入会去除 UTF-8 BOM、统一 LF 换行,保留本批次单位和时区,也不改变单条转换区。 载入不会自动生成报告;点击提交才发送当前输入。「撤销本次载入」仅在输入框仍等于载入文本时可用,后续修改不会被覆盖。「下载当前输入」保存 home-timestamp-batch-input.txt,只包含输入框当前文字,不包含待载入的文件预览或转换结果,下载不触发转换。关闭脚本时仍可手动粘贴并提交批量转换。 选择文件、预览、载入、撤销和下载当前输入都不会自动计算;明确点击生成报告后,才把当前输入提交本站。文件预览与输入框是两份状态,尚未载入的预览不会混入下载或报告。 - 打开批量转换与文件载入:https://home.without202.com/tools/timestamp#batch 5. 比较两个时刻的实际间隔 时间戳工具还可展开「比较两个时间的间隔」:分别填写开始和结束时间,可混用数字时间戳与带时区的 RFC 3339 日期;两个数字共用所选秒、毫秒或自动识别单位,日期按自身偏移解析。结果为结束减开始,显示带正负号的总秒数、总毫秒数和天时分秒分解;小数秒最多保留 9 位,输入超过此精度时拒绝,不使用浮点数或四舍五入。比如 -1 毫秒到 0 毫秒相差 +0.001 秒,不同偏移表示的同一时刻相差 0。一天按 24 小时分解,区别于日历日期数量,不自动套用夏令时;暂不支持闰秒。每个输入最多 100 个 UTF-8 字节,只在提交时发送,修改任一输入或单位后旧结果失效;关闭脚本仍可原生提交。 启用脚本时,时间间隔区可「填入示例」或「交换时间」,只修改本页的两个输入,保留数字单位和报告格式,不影响单条与批量转换区,也不自动计算。示例开始为 2026-11-03T08:00:00+08:00、结束为 2026-11-04T01:30:00Z,实际相差 25 小时 30 分钟;交换后再计算可查看反向差值。填入或交换会清除旧结果并中止本页对旧计算的等待,迟到响应不会重新显示;两个输入文字完全相同时,交换不修改输入或当前结果。填入示例后焦点移到开始时间,便于继续编辑。 时间间隔的「报告格式」默认阅读文本,也可选择 TOML 结构化报告,启用脚本可复制或下载 home-timestamp-interval.toml;关闭脚本仍可选择 TOML 并提交。切换格式会清除旧结果,不自动重新计算。报告包含 format_version = 1、kind = time-interval、数字单位 unit、规范化 UTC 开始与结束时间 start_utc/end_utc。whole_seconds 是向零截取的带符号整秒,subsecond_nanoseconds 是带符号的剩余纳秒,完整差值等于 whole_seconds × 1000000000 + subsecond_nanoseconds。total_nanoseconds 使用十进制字符串,避免大跨度超过 TOML 64 位整数范围;不使用浮点数。sign 为 -1、0 或 1,absolute 表内天、时、分、秒、纳秒均为绝对值,一天按 24 小时分解。下方 time-interval 示例由开始 1970-01-01T00:00:00.000000001Z、结束 1970-01-01T00:00:00Z 生成,差值为 -1 纳秒,整秒为 0、剩余纳秒为 -1。 代码示例 · toml format_version = 1 kind = "time-interval" unit = "auto" start_utc = "1970-01-01T00:00:00.000000001+00:00" end_utc = "1970-01-01T00:00:00+00:00" sign = -1 whole_seconds = 0 subsecond_nanoseconds = -1 total_nanoseconds = "-1" [absolute] days = 0 hours = 0 minutes = 0 seconds = 0 nanoseconds = 1 - 直达时间间隔计算:https://home.without202.com/tools/timestamp#interval 6. 直达区块,保存输入或结果 从指南或其他入口打开带 #interval 的时间间隔链接、带 #batch 的批量转换链接时,启用脚本会自动展开对应工具区;同一工具页中切换直达位置,或手动折叠后再次点击同一位置链接,也会打开目标区。只展开目标及其所属折叠层,不关闭其他已展开工具区,不自动计算。同页定位保留当前输入、单位和报告格式,不额外发送请求或保存偏好;未知或无效片段不展开其他区域。没有指定折叠区时保持原始状态,关闭脚本仍可手动展开并提交。 城市对照的 #city-timezones 同样是工具区块直达链接;启用脚本会展开目标区,关闭脚本可手动展开。本文每节的工具链接都只带区块位置,不携带输入、结果或本机偏好。 四个计算区都在明确提交后由本站 Rust 处理。城市对照不把输入保存到浏览器资料或内容库,计算只读取服务器 IANA 规则;报告标明规则版本,不依赖浏览器默认时区。启用脚本时可复制、下载当前成功结果;城市对照、批量和间隔可选择文本或 TOML,切换格式或修改输入后需要重新计算。关闭脚本仍可通过原生表单提交。 综合参考原有的日期与时间章节、代码示例和工具入口继续保留。需要按日历自然日或周一至周五数量推算时,请使用日期工具;时间间隔按实际时刻计算,一天按 24 小时分解,不等于带节假日的日程安排。 - 回到综合参考的日期与时间章节:https://home.without202.com/journal/everyday-tools-reference#section-8 - 日期间隔与推算:https://home.without202.com/tools/calendar - home 项目介绍:https://home.without202.com/projects/home