首页 > 解决方案 > 在 Nim 中处理 DateTime 中的 AM 和 PM

问题描述

我有一个这样的字符串

01/01/2019 8:43:55 AM # dd/MM/yy hh:mm:ss ??

在阅读完文档后,我得出结论,AM 部分在提供的格式中没有相应的条目。这样我就必须简单地测试一下字符串是否以 AM 或 PM 结尾,然后相应地调整小时部分。

有什么更光滑的吗?我还没有真正掌握如何使用模板,我注意到文档中的最后两个方法提到了模板。

标签: nim-lang

解决方案


我认为您正在寻找tt(此外,您的解析字符串应该在年份和时间上有所不同):

import times

var dt = parse("01/01/2019 8:43:55 AM", "dd/MM/yyyy H:mm:ss tt")
echo dt
## 2019-01-01T08:43:55+01:00

dt = parse("01/01/2019 8:43:55 PM", "dd/MM/yyyy H:mm:ss tt")
echo dt
## 2019-01-01T20:43:55+01:00

推荐阅读