(原创)lua日期、时间、时间戳的计算和转换
----------------------------------------------日期与时间
print("当前时间戳:")
local nowTime = os.time()
print(nowTime) print("")
print("转换成日期:")
--时间戳 转 日期
local nowData = os.date("%Y%m%d%H%M%S",nowTime)
print(nowData) --可以单独转换
local tb = {}
tb.year = tonumber(os.date("%Y",unixTime))
tb.month =tonumber(os.date("%m",unixTime))
tb.day = tonumber(os.date("%d",unixTime))
tb.hour = tonumber(os.date("%H",unixTime))
tb.minute = tonumber(os.date("%M",unixTime))
tb.second = tonumber(os.date("%S",unixTime)) --转成table
local tb = os.date("*t",nowTime)
dump(tb) print("")
print("日期转回时间戳:")
print(os.time(tb)) print("") local time1 = os.time({year=,month=,day=,hour=, min=, sec=})
local time2 = os.time({year=,month=,day=,hour=, min=, sec=}) print("获取时间戳对应的日期")
--获取时间戳对应的天数(天数规则不是自然天,是(hour)4点前当前一天算)
function Tool:GetDayKeyByUnixTime(unixTime,hour)
if hour == nil then hour = end
local retStr = os.date("%Y-%m-%d %H:%M:%S",unixTime)
local time = unixTime
local data = os.date("*t",time)
--dump(data) --(hour)4点前按前一天算
if data.hour < hour then
time = time - **
end local data2 = os.date("*t",time)
--dump(data2)
data2.hour =
data2.min =
data2.sec = local time2 = os.time(data2) local dayKey = os.date("Key%Y%m%d",time2)
local timeBase = time2 --天数key,日期格式字符串,天数key 0点的时间戳
return dayKey,retStr,timeBase
end local dayKey,str = Tool:GetDayKeyByUnixTime(time1,)
print("dayKey = "..dayKey.." str = "..str)
dayKey,str = Tool:GetDayKeyByUnixTime(time2,)
print("dayKey = "..dayKey.." str = "..str) --两个时间的天数差 --时间戳1 时间戳2 多少点开始算第二天
function Tool:NumberOfDaysInterval(unixTime1,unixTime2,dayFlagHour)
if dayFlagHour == nil then dayFlagHour = end
local key1,str1,time1 = Tool:GetDayKeyByUnixTime(unixTime1,dayFlagHour)
local key2,str2,time2 = Tool:GetDayKeyByUnixTime(unixTime2,dayFlagHour) local sub = math.abs(time2 - time1)/(**)
print(str1.." 与 "..str2.."相差的天数:"..sub) return sub
end local sub = Tool:NumberOfDaysInterval(time1,time2,)
print(sub)
(原创)lua日期、时间、时间戳的计算和转换的更多相关文章
- c/c++日期时间处理与字符串string转换
转自:https://www.cnblogs.com/renjiashuo/p/6913668.html 在c/c++实际问题的编程中,我们经常会用到日期与时间的格式,在算法运行中,通常将时间转化为i ...
- 【转载】Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
本文转载自脚本之家,源网址为:https://www.jb51.net/article/147429.htm 一.Python中日期时间模块datetime介绍 (一).datetime模块中包含如下 ...
- Java开发笔记(四十四)本地日期时间与字符串的互相转换
之前介绍Calendar的时候,提到日历实例无法直接输出格式化后的时间字符串,必须先把Calendar类型转换成Date类型,再通过格式化工具SimpleDateFormat获得字符串.而日期时间的格 ...
- C语言 strftime 格式化显示日期时间 时间戳
C/C++程序中需要程序显示当前时间,可以使用标准函数strftime. 函数原型:size_t strftime (char* ptr, size_t maxsize, const char* fo ...
- 字符串类型日期时间转换为Date类型解析转换异常java.text.ParseException: Unparseable date: “2019-09-27T18:31:31+08:00”
错误的写法: SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //这里的格式也可以是别 ...
- 摘:C++日期时间与字符串间的转换
VC6中 CString sTime = _T("2007-10-26 13:20:30"); char *charTime = (LPSTR)(LPCTSTR)sTime; CS ...
- Java 日期时间与unix时间戳之间转换
日期时间 <--> 时间戳 java.time 包提供的新的日期和时间API LocalDateTime: 本地日期时间类 ZoneId: 时区类 ZonedDateTime: 带时区 ...
- ORACLE函数之日期时间运算函数
1 ADD_MONTHS 格式:ADD_MONTHS(D,N) 说明:返回日期时间D加N月后相应的日期时间.N为正时则表示D之后:N为负时则表示为D之前.N为小数则会自己主动先删 ...
- Oracle中与日期时间有关的运算函数
1 ADD_MONTHS 格式:ADD_MONTHS(D,N) 说明:返回日期时间D加N月后对应的日期时间.N为正时则表示D之后:N为负时则表示为D之前:N为小数则会自动先删除小 ...
随机推荐
- VS2013下载与安装
1. 官网下载地址: https://my.visualstudio.com/Downloads?q=visual studio 2013&wt.mc_id=o~msft~vscom~old ...
- SpringBoot+Swagger整合API
SpringBoot+Swagger整合API Swagger:整合规范的api,有界面的操作,测试 1.在pom.xml加入swagger依赖 <!--整合Swagger2配置类--> ...
- Python一些代码
自定义with open打开文件 # 是使用上下文管理协议自定义open class Open(object): def __init__(self,filepath,mode='r',encodin ...
- Python——模块——linecache(对文本行的随机访问)
一.模块的作用 linecache模块允许它获取Python资源文件的任一行. 二.模块函数 (1)linecache. getline(filename, lineno, module_global ...
- ElasticSearch搜索(一)
首先从ES的支持的字段说起,ES文档中字段有多种类型 官方文档. 这几个比较常用: text,keyword,integer,float,boolean,object,geo_point(地理坐标), ...
- Kafka如何保证消息的顺序性
1. 问题 比如说我们建了一个 topic,有三个 partition.生产者在写的时候,其实可以指定一个 key,比如说我们指定了某个订单 id 作为 key,那么这个订单相关的数据,一定会被分发到 ...
- Git源码管理工具使用
注明:双击tap键为自动补全操作 1.视频地址:http://www.newbieol.com/course/index_102.html 2.sourcetree是一个拥有界面的git工具吧 下载官 ...
- 差分约束 HDU - 1384 HDU - 3592 HDU - 1531 HDU - 3666
Intervals Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- windows系统下升级nodejs
别整那些有的没得,直接Win+R 输入:npm config ls 找到nodejs安装路径 然后上nodejs官网,下载最新安装程序,指定旧版本目录,直接安装覆盖掉 啥用n模块啥得,不适合俺们微软体 ...
- 函数内部还是不要使用 strtok()
今天在调试程序的时候,遇到一个奇怪的事情,一开始担心是代码存在内存溢出引起的,花了半个小时没找到原因. 在吃饭的时候,突然想起可能是 strtok() 引起的,查找调用的函数,果然发现在函数中使用了 ...