Luxon解析含时区标识的日期时间字符串时报格式错误
错误原因
你使用的ZZZZ格式占位符无法匹配CDT这类短时时区缩写:
ZZZZ仅支持匹配IANA格式时区名(如America/Chicago)、带完整格式的UTC偏移值(如UTC-5:00)CDT属于短时时区缩写,对应Luxon解析格式的占位符是z
正确解析写法
直接替换格式字符串里的时区占位符即可:
DateTime.fromFormat("06/09/22 02:14 CDT", "MM/dd/yy HH:mm z")
注意事项
短时时区缩写本身存在歧义(例如CST可同时指代美国中部标准时间、中国标准时间、古巴标准时间),Luxon内置的缩写映射仅覆盖北美地区常用时区缩写。如果你的解析场景涉及非北美区域的时区缩写,建议先将缩写替换为UTC偏移量或IANA标准时区名再做解析,避免出现时区识别偏差。
内容的提问来源于stack exchange,提问作者Naren
相关产品推荐
相关产品推荐

