在 Lua 中,你可以使用 `os.date()` 函数轻松地将时间戳转换为格式化的时间字符串


在 Lua 中,你可以使用 `os.date` 函数轻松地将时间戳转换为格式化的时间字符串

  • [⏳ 核心函数:os.date()](#⏳ 核心函数:os.date())
  • [⌨️ 基础示例](#⌨️ 基础示例)
  • [🔤 常用格式化选项](#🔤 常用格式化选项)
  • [🌐 时区处理](#🌐 时区处理)
  • [💡 实用技巧](#💡 实用技巧)

在 Lua 中,你可以使用 os.date() 函数轻松地将时间戳转换为格式化的时间字符串。这个函数允许你自定义输出的时间格式。


⏳ 核心函数:os.date()

os.date() 函数接收两个参数:

  • format: 格式化字符串,指定你希望的时间显示形式。
  • time: 可选参数,表示要转换的时间戳(以秒为单位)。如果省略,则使用当前时间。

⌨️ 基础示例

lua 复制代码
	-- 定义一个时间戳(例如:2021年3月25日 11:09:39 左右)
	local timestamp = 1616634579
	
	-- 转换为格式化的时间字符串
	local formattedTime = os.date("%Y-%m-%d %H:%M:%S", timestamp)
	print(formattedTime) -- 输出:2021-03-25 11:09:39

🔤 常用格式化选项

你可以根据需要组合这些格式符,例如 %Y-%m-%d 输出 2021-03-25%H:%M:%S 输出 11:09:39

格式符 含义 示例
%Y 四位数的年份 2021
%y 两位数的年份 21
%m 月份(01-12) 03
%d 一个月中的第几天(01-31) 25
%H 小时(24小时制,00-23) 11
%I 小时(12小时制,01-12) 11
%M 分钟(00-59) 09
%S 秒(00-59) 39
%A 星期几的全称 Thursday
%a 星期几的简写 Thu
%B 月份的全称 March
%b 月份的简写 Mar
%c 默认的日期和时间表示 Thu Mar 25 11:09:39 2021

🌐 时区处理

默认情况下,os.date() 会使用你所在地区的本地时间。如果你需要转换为 UTC(协调世界时) ,可以在格式化字符串前加上 !

lua 复制代码
	-- 获取当前时间的 UTC 格式
	local utcTime = os.date("!%Y-%m-%d %H:%M:%S")
	print(utcTime) -- 输出类似:2025-09-30 05:16:00 (UTC时间)
	
	-- 转换指定时间戳为 UTC
	local utcTimeSpecific = os.date("!%Y-%m-%d %H:%M:%S", 1616634579)
	print(utcTimeSpecific)

💡 实用技巧

  • 获取当前时间 :不传入时间戳参数即可。

    lua 复制代码
    local currentTime = os.date("%Y-%m-%d %H:%M:%S")
    print(currentTime) -- 输出当前的本地时间
  • 获取时间戳 :使用 os.time() 函数获取当前时间的时间戳。

    lua 复制代码
    local currentTimestamp = os.time()
    print(currentTimestamp) -- 输出自 1970-01-01 00:00:00 UTC 以来的秒数
  • 时间字符串转时间戳 :使用 os.time() 并传入一个包含日期时间信息的表。

    lua 复制代码
    -- 定义一个表示日期时间的表
    local timeTable = {year=2021, month=3, day=25, hour=11, min=9, sec=39}
    -- 转换为时间戳
    local timestampFromTable = os.time(timeTable)
    print(timestampFromTable) -- 输出:1616634579

希望这些信息能帮到大家!


相关推荐
老蒋每日coding2 小时前
LangGraph:从入门到Multi-Agent超级智能体系统进阶开发
开发语言·python
郁闷的网纹蟒2 小时前
虚幻5---第12部分---蒙太奇
开发语言·c++·ue5·游戏引擎·虚幻
小旭95272 小时前
Java 反射详解
java·开发语言·jvm·面试·intellij-idea
雨季6662 小时前
Flutter 三端应用实战:OpenHarmony “极简文本行数统计器”
开发语言·前端·flutter·ui·交互
m0_748233173 小时前
PHP版本演进:从7.x到8.x全解析
java·开发语言·php
雨季6663 小时前
Flutter 三端应用实战:OpenHarmony 简易“动态字体大小调节器”交互模式深度解析
开发语言·flutter·ui·交互·dart
zhengfei6113 小时前
精选的优秀法证分析工具和资源列表
开发语言·php
当战神遇到编程3 小时前
图书管理系统
java·开发语言·单例模式
u0109272713 小时前
实时数据流处理
开发语言·c++·算法
PacosonSWJTU3 小时前
mac-python解释器理解与python安装
开发语言·python