Haskell中使用Date.Time包解析日期时间的正确格式字符串是什么
正确格式字符串
你需要使用的格式串为 "%Y-%m-%dT%H:%M:%S%QZ",修正后的完整代码如下:
parseStringToDateTime :: String -> UTCTime parseStringToDateTime = parseTimeOrError False defaultTimeLocale "%Y-%m-%dT%H:%M:%S%QZ"
格式说明
原格式串的错误包含:用空格匹配了实际存在的日期时间分隔符T、小时/分钟/秒的占位符多写了多余的重复字符、没有匹配秒的小数部分和末尾的UTC标识Z。
各占位符对应规则:
%Y:匹配4位年份%m:匹配补前导零的2位月份%d:匹配补前导零的2位日期- 格式串中的
T为固定字符,原样匹配日期与时间的分隔符 %H:匹配24小时制补前导零的2位小时%M:匹配补前导零的2位分钟%S:匹配补前导零的2位整数秒%Q:匹配秒的小数部分(自动包含开头的小数点)- 格式串末尾的
Z为固定字符,原样匹配UTC时区标识
内容的提问来源于stack exchange,提问作者user279185
相关产品推荐
相关产品推荐

