Lua中获取第二天凌晨的剩余时间
在时间这个问题上,lua提供两大方法来供开发者使用,一个是os.time(),一个是os.date(),这两大方法可以满足日常开发的需求。
那么我们如何准确运用这两大方法呢。
在这一文章中我们先讲os.time(),并通过一个简单的例子来获取到指定时间的秒数。
在开始这个例子之前,我们需要明白一些东西:
os.time() 得到是当前时间的距离1970.1.1.08:00时间的秒数,如果传入的参数小于这个时间,那么就会得到一个,秒数就是负数,会得到一个空值
如果没有任何参数,就会返回当前时间。如果参数一个table,并且table的域必须有 year, month, day, 可有也可以没有 hour, min, sec, isdst,则会返回table所代表日期的时间,如果未定义后几项,默认时间为当天正午(12:00:00)。 返回值是一个 number ,其值取决于你的系统。
local time=os.time() --返回当前时间
那么显而易见这个方法返回的是一个秒数。
local toTime=os.time({year =2016, month = 11, day =23, hour =17, min =17, sec = 00})
如果我们给os.time()传入一个自定义时间的table,代码如上所示,那么我们也将得到那个时间的总秒数。
用未来时间减去当前时间,就能获取到指定时间的秒数。
那么我们就来完成这个例子
--获取到第二日凌晨的剩余时间 返回秒数
function GetReaminSecondsTo24()
local toYear=os.date("*t").year
local toMonth=os.date("*t").month
local toDay=os.date("*t").day
local toTime = os.time({year =toYear, month = toMonth, day =toDay, hour =23, min =59, sec = 59})
local time=os.time()
return toTime-time+1; --为什么+1?因为我们返回的是当日23:59:59的秒数,如果是第二天凌晨的
--话就需要多加1
end
Lua中获取第二天凌晨的剩余时间的更多相关文章
- 【原创】大叔问题定位分享(36)openresty(nginx+lua)中获取不到post数据,ngx.req.get_body_data返回nil
openresty(nginx+lua)中获取不到post数据,ngx.req.get_body_data返回nil This function returns nil if the request ...
- lua中获取时间
os.date() 返回 XX/XX/XX XX:XX:XX 月/日/年 时:分:秒 os.time() 返回的是从1970年1月1日到现在的经过的秒数. 例如: print(os. ...
- springdata 使用plql更新时候注意点 ?2 表示从方法中获取第二个形参的值 ?1表示从方法中获取第一个值
1.query表示的是查询 需要在操作update的方法上再次添加一个注解modifying 2.plql不是springdatajpa自带的sql功能自带的功能 自动有事务: 所以需要我们手动在se ...
- Lua中获取table长度
-- table.getn(tableName) 得到一个table的大小,等同于操作符# -- 要注意的是:该table的key必须是有序的,索引是从1开始的. --例如有序的 local xian ...
- 在SQL SERVER中获取表中的第二条数据
在SQL SERVER中获取表中的第二条数据, 思路:先根据时间逆排序取出前2条数据作为一个临时表,再按顺时排序在临时表中取出第一条数据 sql语句如下: select top 1 * from(se ...
- lua中得栈
如果你看了LUA的文档,那么就应该很清楚LUA与C交互数据时都是用到LUA中所谓的stack.那么当我调用lua_open函数之后栈是什么样的呢?空的(luaopen_base等会往栈上加进一些东西) ...
- Lua中的捕获
Lua中的捕获 捕获 捕获是这样一种机制:可以使用模式串的一部分匹配目标串的一部分.将你想捕获的模式用圆括号括起来,就指定了一个捕获.在string.find使用捕获的时候,函数会返回捕获的值作为 ...
- [译] Closures in Lua - Lua中的闭包
原文:(PDF) . 摘要 一等(first-class)函数是一种非常强大的语言结构,并且是函数式语言的基础特性.少数过程式语言由于其基于栈的实现,也支持一等函数.本文讨论了Lua 5.x用于实现一 ...
- Lua 中的string库(字符串函数库)总结
(字符串函数库)总结 投稿:junjie 字体:[增加 减小] 类型:转载 时间:2014-11-20我要评论 这篇文章主要介绍了Lua中的string库(字符串函数库)总结,本文讲解了string库 ...
- Lua中的元表与元方法
[前言] 元表对应的英文是metatable,元方法是metamethod.我们都知道,在C++中,两个类是无法直接相加的,但是,如果你重载了“+”符号,就可以进行类的加法运算.在Lua中也有这个道理 ...
随机推荐
- 【Netty】(5)-源码 Bootstrap
[Netty]5 源码 Bootstrap 上一篇讲了AbstractBootstrap,为这篇做了个铺垫. 一.概述 Bootstrap 是 Netty 提供的一个便利的工厂类, 我们可以通过它来完 ...
- Eclipse中的快捷键:批量修改指定的变量名、方法名、类名等:alt + shift + r
/* * Eclipse中的快捷键: * 1.补全代码的声明:alt + / * 2.快速修复: ctrl + 1 * 3.批量导包:ctrl + shift + o * 4.使用单行注释:ctrl ...
- 0101-JDK和tomcat的安装配置
一.JDK8安装与配置 分别配置如下三个系统变量 JAVA_HOME设置变量值为java JDK的安装目录例如: C:\Program Files\Java\jdk1.8.0 PATH添加变量值 %J ...
- 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
写在前面 最近,DeepSeek 发布的推理大模型 DeepSeek - R1 ,可以说是AI大模型领域杀出的一匹黑马.它在国外大模型排名 Arena 上成绩惊人,基准测试位列全类别大模型第三,在风格 ...
- C#中使用正则将字符串中某字符不区分大小写并按全字匹配替换为空
具体代码如下所示: //将字符串中desc不区分大小写并按全字匹配替换为空 var strText = "CreatDeSce DeSc,UserName AsC"; string ...
- USACO24DEC 2D Conveyer Belt S [ 蓝 ] [ 图论建模 ] [ Flood Fill ]
2D Conveyer Belt:图论建模+洪水填充妙妙题.质量极高. 观察 首先面对这种不断往图里面加点或者边,且满足前面的答案可以由加边后推出的题,第一个想到的就得是倒序枚举加边过程的 trick ...
- JavaGUI - [03] LayoutManager布局管理器
Component中有一个方法setBounds()可以设置当前容器的位置和大小,但如果我们手动为组件设置位置和大小的话,就会造成程序的不通用性.LayoutManager布局管理器可以根据运行平 ...
- Linux - Centos操作系统iso文件下载
CENTOS VERSION DOWNLOAD LINK CentOS 8.5(2111) Download CentOS 8.4(2105) Download CentOS 8.3(2011) Do ...
- faker 函数支持哪些
3.2 常用函数 除了上述介绍的fake.name和fake.address生成姓名和地址两个函数外,常用的faker函数按类别划分有如下一些常用方法. 1.地理信息类 fake.city_suffi ...
- bp安装+匹配规则(防止抓火狐的多余包)
bp安装使用 BurpLoaderKeygen.jar: 2c8c7b95640f31985f83580402f26a06b78c55877fa33ef1f9d14d2ebb2d8ecd burpsu ...