首页 > 解决方案 > ISO8601 格式的时区指示符“T”和“Z”是否区分大小写?

问题描述

我正在使用以下 ISO8601 格式:

YYYY-MM-DDThh:mm:ssZ

我曾经OffsetDateTime.parse()解析过这种格式。我能够通过在这里传递t(而不是T)和z(而不是)来解析日期时间Z

那么任何人都可以判断它是否在ISO8601中被允许,还是仅在解析逻辑中被遗漏?

标签: javajava-timeiso8601datetimeformatteroffsetdatetime

解决方案


那么任何人都可以判断它是否在 ISO8601 中被允许,还是仅在解析逻辑中被遗漏?

我不认为生成它们是有效的,尽管我猜解析器允许它很好(虽然不是很好)。

我可以访问的规范 EBNF(8601-1 DIS 附录 A)对所有指示符使用大写拉丁字母,无论它们是 Z、T、W、R、P、Y、M、D、H、M 还是 S,与(非 A)BNF 不同,据我所知,EBNF 终端区分大小写。


推荐阅读