Lua中的一些库(2)

【前言】

《Lua中的一些库(1)》这篇文章中,总结了一部分Lua中的库函数,一篇文章肯定是总结不完的,所以,就来一个《Lua中的一些库(2)》。希望大家能忍住。来吧。

操作系统库定义在table os中,其中包含了文件操作函数、获取当前日期和时间的函数。为了保证Lua的可移植性,所以对于文件库来说,就比较简单,它只包含两个函数:

  1. 用于文件改名的os.rename函数;
  2. 用于删除文件的os.remove函数。

但是对于获取日期和时间的函数,还是有必要花费一点时间总结一下的。

【日期与时间】

在Lua库中提供了两个非常重要的日期和时间函数,分别是time和date。那就先从time函数开始。

  1. time
    如果不带任何参数调用time函数,它会以数字形式返回当前的日期和时间。返回的数值表示当前时间到某个特定时间的秒数,在不同的系统上,这个特定的时间是不一样的。如果用一个table作为参数调用它,它会返回一个数字,表示该table中所描述的日期和时间。这种table具有以下有效字段:
    year 一个完整的年份
    month 01-12
    day 01-31
    hour 00-23
    min 00-59
    sec 00-59
    isdst 一个布尔值,true表示夏令时

    前三个字段是必须要有的,比如:

    print(os.time()) -- 输出当前时间的描述
    print(os.time({year=2014,month=8,day=14}))
  2. date
    函数date是time的一个反函数,它可以将一个表示日期和时间的数字转换成某些高级的表现形式。其第一个参数是格式字符串,指定了期望的表示形式;第二个参数是日期和时间的数字,默认为当前日期和时间。例如:
    local tbCurrentTime = os.date("*t")
    
    for k, v in pairs(tbCurrentTime) do
        print(k .. "=" .. tostring(v))
    end
    这样就会输出当天的时间,你运行以下代码看看。其实data函数没有多少需要说的。只是data函数的第一个参数的格式种类是非常多的,可以去百度一下。我一般用一个*t就够了。但是了解一下其它的也还不错。
    对于这里说到的time和date两个函数,一般time函数返回的描述不适合人去读,我们一般都是保存这个数字,在后台进行处理;对于date函数,它返回的内容适合人去读,所以,一般使用date返回的数据在UI上显示。
原文地址:https://www.cnblogs.com/ring1992/p/6001287.html