Как правильно форматировать дату в скрипте LUA - 05292020 - PullRequest
0 голосов
/ 29 мая 2020

У меня проблемы с форматированием даты в этом LUA скрипте. Я хочу, чтобы он выводил текущую дату в следующем формате - 05292020 . Однако я не могу правильно отформатировать год, поэтому я получаю 052920 . Я много искал, чтобы найти решение, но я действительно застрял на этом. Кто-нибудь может указать мне правильное направление? Заранее спасибо!

function OnEvent(event, arg, family)
  if event == "G_PRESSED" and arg == 1 then


    -- Take the first 8 characters only (1,8)
    local date = string.sub(GetDate(), 1, 8)
    for i = 1, #date do
      local ch = date:sub(i,i)
      if ch == "-" then
        PressAndReleaseKey("minus")
      elseif ch == "," then
        PressAndReleaseKey("comma")
      elseif ch == "." then
        PressAndReleaseKey("period")
      elseif ch == "/" then
      --  PressAndReleaseKey("slash")
      elseif ch == " " then
        PressAndReleaseKey("spacebar")
      elseif ch == ":" then
        PressKey("lshift")
        Sleep(10)
        PressAndReleaseKey("semicolon")
        ReleaseKey("lshift")
      elseif ch == ch:lower() then
        PressAndReleaseKey(ch)
      else
        PressKey("lshift")
        Sleep(10)
        PressAndReleaseKey(ch:lower())
        ReleaseKey("lshift")
      end
    end


  end
end  

Ответы [ 2 ]

0 голосов
/ 31 мая 2020

Это должно быть вопрос использования правильного формата с os.date, например:

print(os.date("%d%m%Y"))
0 голосов
/ 30 мая 2020

Для своих нужд я делаю это так:

-- CURRENT DATE AND TIME
local myyear = os.date("*t").year
local mymonth = os.date("*t").month; if mymonth < 10 then mymonth = "0"..mymonth end
local myday = os.date("*t").day; if myday < 10 then myday = "0"..myday end
local myhour = os.date("*t").hour; if myhour < 10 then myhour = "0"..myhour end
local mymin = os.date("*t").min; if mymin < 10 then mymin = "0"..mymin end
local mysec = os.date("*t").sec; if mysec < 10 then mysec = "0"..mysec end
local mytime = myyear..mymonth..myday.."_"..myhour..mymin..mysec
print(mytime)

Надеюсь, это не слишком сложно и может помочь?

PS: Я использую движок gideros, который использует lua.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...