1

我正在尝试让模拟时钟显示时间(12 小时),我必须使用 Lua。我使用以下行以这种格式获取时间:

os.date('%I:%M')

这显然不起作用,因为我不断收到零错误,这是代码唯一有问题的地方。os.time 工作正常,但不是 os.date;我什至尝试不使用'%I:%M'(时间格式),但它仍然无法与 os.date() 一起使用。

我究竟做错了什么?我是否必须从其他库导入日期函数?顺便说一句,我是一个完全的 Lua nooby ......

我实际上用它来为 Minecraft 上的 ComputerCraft 工作监视器,但代码是:

m = peripheral.wrap('back')
m.setTextScale(5)
while i == i do
m.clear()
m.setCursorPos(1,1)
x = os.date('%I:%M')
m.write(x)
sleep(60)
end

问题是其余的代码不会影响它。os.date 是唯一的问题,因为我单独尝试它,它给了我同样的错误“尝试调用 nil”。

4

2 回答 2

1

据此 ComputerCraft 似乎没有公开os.date()这里建议一种解决方法:

不幸的是,日期和时间没有向我们透露。在 Lua 中,os.date() 和 os.time() 函数将是我们想要的,但是在 ComputerCraft 中,日期并没有实现,时间给了 minecraft 时间。

我知道获取真实日期和时间的唯一方法是使用 http API 从 Web 获取它。

于 2012-08-09T22:53:10.407 回答
1

另外,如果您想要我的世界日期,请尝试使用os.getday()

于 2014-03-23T14:45:08.310 回答