【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前

这篇具有很好参考价值的文章主要介绍了【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前

  • Unity是 实时3D互动内容创作和运营平台 。
  • 包括游戏开发美术建筑汽车设计影视在内的所有创作者,借助 Unity 将创意变成现实。
  • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机平板电脑PC游戏主机增强现实虚拟现实设备。
  • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏
  • 🎬 博客主页:https://xiaoy.blog.csdn.net

  • 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN🙉

  • 🎄 学习专栏推荐:Unity系统学习专栏

  • 🌲 游戏制作专栏推荐:游戏制作

  • 🌲Unity实战100例专栏推荐:Unity 实战100例 教程

  • 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

  • 📆 未来很长,值得我们全力奔赴更美好的生活✨

  • ------------------❤️分割线❤️-------------------------

【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前

【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前
【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前


Unity 实用小技能学习

Lua中获取当前时间戳,时间戳转换为时间格式、时间戳转换为多久之前

在Lua中我们有时候时间相关的内容,如获取当前的时间戳,将时间戳转换为时间格式,将时间戳转换为多久之前等。

主要使用了Lua 中的 os.time 函数和 os.tade 函数。

Lua 标准库中提供了关于时间的函数os.time()os.date(),这两个函数使用起来还是有需要注意的地方的。
这两个函数的结果都是加入了时区;比如我们现在系统是GMT+8; os.time({year=1970, month=1, day=1, hour=0})计算出来的是-28800,也就是86060;
计算的是当前table中给定的时间距离1970.1.1 08:00时间的秒数,所以就得到负数了;

C标准库中,time()函数得到的时间戳其实也是加入了时区,也就是说不管你系统是那个时区,该函数返回的都是距离1970.1.1 00:00到当前的秒数;
比如现在是GMT+8 00:00, 那么GMT+9 就是01:00,在这两个 时区同时调用time()函数,得到的值是一样的;

时区只会影响到我们转换过来的可读样式,比如os.date()函数,os.date(“*t”, 0)的结果在不同的时区hour字段的值会不一样,世界标准时间以GMT+0为参照,北京时间以GMT+8为参照,中间有8个小时的差距;

下面就来介绍一下具体实现方法。

1.Lua中获取当前时间戳方法:

local t = os.time()

直接在Lua中执行此方法,可以获取到一个当前时间戳(也就是从1970年到当前时间为止的秒数)

2.将时间戳转换为时间格式方法:

--时间戳 转时间格式,t 是秒时间戳
function getTimeStamp(t)
    --如果毫秒 就是 t/1000

	-- 格式:年-月-日
    local str  =os.date("%Y-%m-%d",t)
    
    --格式:年-月-日-时
    --local str  =os.date("%Y-%m-%d-%H",t)
    
	--格式:年-月-日-时-分-秒
    --local str  =os.date("%Y-%m-%d %H:%M:%S",t)

    return str
end

3.将时间格式转换为时间戳方法:

local t = os.time(
	{
		--获取指定时间的时间戳,例如2023-3-21 00:00:00
		day=21, month=3, year=2023, hour=0, minute=0, second=0
	}) 

4.时间戳转换为多久之前方法:
使用时传入参数t, t = 当前时间戳() - 指定时间的时间戳

比如服务端传给我们一封邮件的发送时间,我们可以通过该方法将邮件的发送时间转换为多久前发送。

--时间转换成多久前,传入时间戳t
function UIUtil.getTimeLongAgo(t)
    local str = ""
    if t ~= nil then
        if t < 60 then
            str = string.format("%s秒",t)
        elseif t >= 60 and t < 3600 then
            local num = math.floor(t / 60)
            str = string.format("%s分钟",num)
        elseif t >= 3600 and t < 86400 then
            local num = math.floor(t / 3600)
            str = string.format("%s小时",num)
        elseif t > 86400 and t < 2592000 then
            local num = math.floor(t / 86400)
            str = string.format("%s天",num)
        elseif t > 2592000 and t < 31104000 then
            local num = math.floor(t / 2592000)
            str = string.format("%s个月",num)
        else
            local num = math.floor(t / 31104000)
            str = string.format("%s年",num)
        end
    end
    return str
end

【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前文章来源地址https://www.toymoban.com/news/detail-405779.html

到了这里,关于【100个 Unity实用技能】 | Lua中获取当前时间戳,时间戳和时间格式相互转换、时间戳转换为多久之前的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【100个 Unity实用技能】☀️ | Unity中 过滤透明区域的点击事件

    【100个 Unity实用技能】☀️ | Unity中 过滤透明区域的点击事件

    🎬 博客主页:https://xiaoy.blog.csdn.net 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN 🙉 🎄 学习专栏推荐:Unity系统学习专栏 🌲 游戏制作专栏推荐:游戏制作 🌲Unity实战100例专栏推荐:Unity 实战100例 教程 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📆 未来很长

    2024年01月22日
    浏览(15)
  • 【100个 Unity实用技能】☀️ | Unity UGUI ScrollView滑动到指定位置

    【100个 Unity实用技能】☀️ | Unity UGUI ScrollView滑动到指定位置

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2024年02月12日
    浏览(12)
  • C# 获取当前系统时间及时间格式详解

    C# 获取当前系统时间及时间格式详解 在 C# 编程中,获取当前系统时间是一个常见的操作。此外,对于时间的格式化也是开发中经常遇到的需求。本文将详细介绍如何使用 C# 获取当前系统时间,并对常用的时间格式进行解析和格式化。 获取当前系统时间 要获取当前系统时间

    2024年02月07日
    浏览(14)
  • Java——时间戳和时间格式转换

    时间戳(TimeStamp):通常是一个字符序列,唯一地标志某一刻的时间。Java 中时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数。 一、获取时间戳的方式 二、Date类 1、无参构造方法——返回结果Thu Dec 15 09:55:39 CST 2022 2、有参构造方法——已废弃 三、时间格式

    2024年02月11日
    浏览(11)
  • 【100个 Unity实用技能】☀️ | 关于触发器互相检测的必要前提条件配置

    【100个 Unity实用技能】☀️ | 关于触发器互相检测的必要前提条件配置

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2023年04月09日
    浏览(19)
  • 【100个 Unity实用技能】☀️ | Unity读取本地文件(Json,txt等)的三种方法示例

    【100个 Unity实用技能】☀️ | Unity读取本地文件(Json,txt等)的三种方法示例

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2023年04月08日
    浏览(7)
  • vue关于时间的操作(持续更新)(时间格式化、获取当前系统时间)

    2.1 封装全局过滤器 在utils中创建 filter.js 文件 2.2 在 main.js 进行全局注入 2.3 在其他页面使用

    2024年01月24日
    浏览(13)
  • 【100个 Unity实用技能】 | C# 中关于补位的写法 PadLeft,PadRight 函数

    【100个 Unity实用技能】 | C# 中关于补位的写法 PadLeft,PadRight 函数

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2023年04月14日
    浏览(8)
  • 【100个 Unity实用技能】☀️ | UGUI Text中加入超链接文本,可直接点击跳转

    【100个 Unity实用技能】☀️ | UGUI Text中加入超链接文本,可直接点击跳转

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2024年02月08日
    浏览(11)
  • 【100个 Unity实用技能】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题

    【100个 Unity实用技能】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题

    🎬 博客主页:https://xiaoy.blog.csdn.net 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN 🙉 🎄 学习专栏推荐:Unity系统学习专栏 🌲 游戏制作专栏推荐:游戏制作 🌲Unity实战100例专栏推荐:Unity 实战100例 教程 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📆 未来很长

    2024年02月11日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包