gpt4 book ai didi

将 unix 时间戳转换为 YYYY-MM-DD HH :MM:SS

转载 作者:太空狗 更新时间:2023-10-29 14:55:45 24 4
gpt4 key购买 nike

我有一个 Unix 时间戳,我需要从中获取单独的年、月、日、小时、分钟和秒值。我的数学课一直不太好,所以我想知道你们是否可以帮我一点忙 :)

我必须自己做所有事情(没有 time.h 函数)。语言是C。

最佳答案

免责声明:以下代码不考虑leap years <罢工>或leap seconds [Unix 时间不考虑闰秒。无论如何,他们被高估了。 -Ed]。另外,我没有测试它,所以可能有错误。它可能会踢你的猫并侮辱你的母亲。祝你有美好的一天。

让我们尝试一些伪代码(实际上是 Python):

# Define some constants here...

# You'll have to figure these out. Don't forget about February (leap years)...
secondsPerMonth = [ SECONDS_IN_JANUARY, SECONDS_IN_FEBRUARY, ... ]

def formatTime(secondsSinceEpoch):
# / is integer division in this case.
# Account for leap years when you get around to it :)
year = 1970 + secondsSinceEpoch / SECONDS_IN_YEAR
acc = secondsSinceEpoch - year * SECONDS_IN_YEAR

for month in range(12):
if secondsPerMonth[month] < acc:
acc -= month
month += 1

month += 1

# Again, / is integer division.
days = acc / SECONDS_PER_DAY
acc -= days * SECONDS_PER_DAY

hours = acc / SECONDS_PER_HOUR
acc -= hours * SECONDS_PER_HOUR

minutes = acc / SECONDS_PER_MINUTE
acc -= minutes * SECONDS_PER_MINUTE

seconds = acc

return "%d-%d-%d %d:%d%d" % (year, month, day, hours, minutes, seconds)

如果我搞砸了,请告诉我。在 C 中执行此操作应该不会太难。

关于将 unix 时间戳转换为 YYYY-MM-DD HH :MM:SS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1280051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com