tempo Unix per in chiaro di data e ora
-
10-10-2019 - |
Domanda
Im lavorando in lua con il supporto di data in modo Quali sono alcuni modi ° convertono unix millisecondo volta in volta e la data ??p>
hh gg / mm / aaaa: mm: ss
ho l'ora e il giorno, ma l'anno e il mese sono difficili
Grazie.
EDIT: Tutto quello che serve è il giorno del mese ora ho capito le altre parti
EDIT: la prima parte del codice NO giorno del mese e ancora lavorando DST
TIMEZONE=-5
DAYLIGHTSAVING=0--NOT DONE
while true do
t=tick()
y=math.floor(1970+ t /31556926)
ds=((1970+t/31556926)-y)*31556926
m=math.floor(ds/2629743)+1
d=math.floor(ds/86400)+1
md=0--NOT DONE
wd=d%7+6
print(md,wd)
h=math.floor(math.fmod(t,60*60*24)/3600) + 5 + (TIMEZONE) + (DAYLIGHTSAVING)
mn= math.floor(math.fmod(t,60*60*24)/60 - 60*h)
s= math.floor(math.fmod(math.fmod(t,60*60*24),60))
print(m,d,y)
print(h,mn,s)
wait(1)
end
i renderà più piacevole afer ottengo giorno del mese e ora legale
Soluzione
Per le persone che si stanno chiedendo ....
Ecco come ho fatto:
TIMEZONE=-5
DST=0
dm={31,28,31,30,31,30,31,31,30,31,30,31}
while true do
t=tick()
y=math.floor(1970+ t /31556926)
ds=((1970+t/31556926)-y)*31556926
m=math.floor(ds/2629743)+1
d=math.floor(ds/86400)+1
md=math.floor(((ds/2629743+1)-m)*dm[m])+1
wd=d%7+6
if(m11)then DST=0 else DST=1 end
if(m==3)then if(md>=14)then DST=1 else DST=0 end end
if(m==11)then if(md>=7)then DST=0 else DST=1 end end
h=math.floor(math.fmod(t,60*60*24)/3600) + 5 + (TIMEZONE) + (DST)
mn= math.floor(math.fmod(t,60*60*24)/60 - 60*(h-DST))
s= math.floor(math.fmod(math.fmod(t,60*60*24),60))
wait(1)
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow