【前言】

《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=,month=,day=}))
  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上显示。

Lua中的一些库(2)的更多相关文章

  1. Lua 中的string库(字符串函数库)总结

    (字符串函数库)总结 投稿:junjie 字体:[增加 减小] 类型:转载 时间:2014-11-20我要评论 这篇文章主要介绍了Lua中的string库(字符串函数库)总结,本文讲解了string库 ...

  2. Lua中的一些库(1)

    [数学库] 数学库(math)由一组标准的数学函数构成.这里主要介绍几个常用的函数,其它的大家可以自行百度解决. 三角函数(sin,cos,tan……)所有的三角函数都使用弧度单位,可以用函数deg( ...

  3. Lua中的基本函数库--(转自忧郁的加菲猫)

    基本函数库为Lua内置的函数库,不需要额外装载assert (v [, message])功能:相当于C的断言,参数:v:当表达式v为nil或false将触发错误,message:发生错误时返回的信息 ...

  4. Lua中的基本函数库

    assert (v [, message])功能:相当于C的断言,参数:v:当表达式v为nil或false将触发错误,message:发生错误时返回的信息,默认为"assertion fai ...

  5. lua中的数学库

    Lua5.1中数学库的所有函数如下表: 使用数学库,不需要require,直接math.function就可以math.pi 为圆周率常量 = 3.14159265358979323846 abs 取 ...

  6. Lua中字符串库中的几个重点函数

    [前言] 在<Lua中的一些库(1)>中也说到了,要对string库的模式匹配进行单独的讲解.对于字符串的处理,对于任何语言的学习来说,都是一个难点,而且也是一个必会的知识点.给你一个字符 ...

  7. Lua中的常用函数库汇总

    lua库函数 这些函数都是Lua编程语言的一部分, 点击这里了解更多. assert(value) - 检查一个值是否为非nil, 若不是则(如果在wow.exe打开调试命令)显示对话框以及输出错误调 ...

  8. Lua中的字符串函数库

    字符串库中的一些函数是非常简单的: string.len(s)          返回字符串s的长度:string.rep(s, n)      返回重复n次字符串s的串:你使用string.rep( ...

  9. lua中的table、stack和registery

    ok,前面准备给一个dll写wrapper,写了篇日志,看似写的比较明白了,但是其实有很多米有弄明白的.比如PIL中使用的element,key,tname,field这些,还是比较容易混淆的.今天正 ...

随机推荐

  1. Grunt自动化构建环境搭建

    1.环境准备 需要安装Git.Node.Bower.Grunt.Ruby NodeJS https://nodejs.org/en/ Ruby    http://rubyinstaller.org/ ...

  2. Mysql数据的增删改查

    一 介绍 MySQL数据操作: DML 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 使用INSERT实现数据的插入 UPDATE实现数据的更新 使用DELETE实现 ...

  3. c语言之控制语句:循环

    #include<stdio.h> int main(void) { long num; long sum = 0L; int status; printf("Please en ...

  4. docker(四) 使用Dockerfile构建镜像

    下面以一个例子来演示构建镜像的过程. #在/tmp目录下演示 cd tmp mkdir build-redis-image 1.创建Dockerfile文件 vim Dockerfile 并写入如下内 ...

  5. 计算机网络基础知识-OSI七层协议模型

    一.物理层 物理层主要规定了物理设备的标准,如网线的类型.光纤的接口类型.各种传输介质的传输速率,物理层的数据以比特流(二进制)的形式存在,传输时将比特流转化为电流强弱,达到目的地之后再转化为比特流. ...

  6. 记自己在spring中使用redis遇到的两个坑

    本人在spring中使用redis作为缓存时,遇到两个坑,现在记录如下,算是作为自己的备忘吧,文笔不好,望大家见谅: 一.配置文件 <!-- 加载Properties文件 --> < ...

  7. monkey自定义脚本实践

    自定义脚本的稳定性测试 常规Monkey测试执行的是随机的事件流,但如果只是想让Monkey测试某个特定场景这时候就需要用到自定义脚本了,Monkey支持执行用户自定义脚本的测试,用户只需要按照Mon ...

  8. Azure Machine Learning

    About me In my spare time, I love learning new technologies and going to hackathons. Our hackathon p ...

  9. ☆ [WC2006] 水管局长 「LCT动态维护最小生成树」

    题目类型:\(LCT\)动态维护最小生成树 传送门:>Here< 题意:给出一张简单无向图,要求找到两点间的一条路径,使其最长边最小.同时有删边操作 解题思路 两点间路径的最长边最小,也就 ...

  10. 【LOJ2586】【APIO2018】选圆圈 CDQ分治 扫描线 平衡树

    题目描述 在平面上,有 \(n\) 个圆,记为 \(c_1,c_2,\ldots,c_n\) .我们尝试对这些圆运行这个算法: 找到这些圆中半径最大的.如果有多个半径最大的圆,选择编号最小的.记为 \ ...