我有一个问题,需要将日期值用于向应用程序发送一些处理,但首先需要将其格式化为不同的DateTime格式。
我有什么
我开始使用的DateTime值的格式为:
MM/DD/YYYY hh:mm:ss [AM/PM]
我需要什么
我需要使用Lua以某种方式将其转换为以下DateTime格式:
YYYY-MM-DD hh:mm:ss
我尝试了很多不同的方法都没有成功;我会发布我尝试过的最适当的方法,但也许这个方法也偏离了正确方向,可能还有更简单的LUA方法。
我尝试过的方法
print(os.date("%Y-%m-%d %H:%M:%S","05/17/2017 05:17:00 PM"))
错误
stdin:1: 'date'的第二个参数错误(应为数字,得到字符串)
我的理解
我认为这意味着数据类型是字符串而不是日期时间类型,需要在使用os.date
之前进行转换。我还假设可以将datetime字符串的值传递给os.date
,它会以新格式输出相同的datetime值。
我已阅读各种帖子,需要解析datetime值的各个部分,然后使用这些解析出的部分构建所需的格式。我发布帖子希望有人能够帮助我引导正确的方向完成这项任务,以便我不必再进行大量的试错运行并继续阅读,但我会一直这样做,直到听到回复或放弃当天的尝试。
简单总结
我从一个值开始:
05/17/2017 05:17:00 PM
我想要将此值转换为
2017-05-17 17:17:00
通过新格式化的datetime,我可以处理应用程序中的某些内容。
其他
任何级别的Lua逻辑都将被探索,无论是自定义函数、不同的内置函数以获得datetime格式,等等。我对所有想法都持开放态度,只是在我的示例中显示了print()
和os.date()
函数,以保持简单,但我也可以接受更复杂的东西。