Lua中的常用操作系統(tǒng)庫

2022-06-25 15:41 更新

os.time ([table])

功能:按table的內(nèi)容返回一個時間值(數(shù)字),若不帶參數(shù)則返回當前時間.(在許多系統(tǒng)中該數(shù)值是當前距離某個特定時間的秒數(shù)。)

說明:當為函數(shù)調(diào)用附加一個特殊的時間表時,該函數(shù)就是返回距該表描述的時間的數(shù)值。這樣的時間表有如下的區(qū)間:

前三項是必需的,如果未定義后幾項,默認時間為正午(12:00:00)。如果是在里約熱內(nèi)盧(格林威治向西三個時區(qū))的一臺Unix計算機上(相對時間為1970年1月1日,00:00:00),對于pc機(中國時區(qū)而言)有稍微更改,更改了為1970年1月1日,08:00:00,這是因我國與其它國家時間差導致。

例子:

print(os.time{year=1970, month=1, day=1,hour=8})

print(os.time{year=1970, month=1, day=1}) --若未定義“時,分,秒”,默認時間為正午(04:00:00)

運行結果:

-->0

-->14400(14400 = 46060 )

os.date ([format [, time]])

功能:返回一個按format格式化日期、時間的字串或表

說明:函數(shù)date,其實是time函數(shù)的一種“反函數(shù)”。它將一個表示日期和時間的數(shù)值,轉換成更高級的表現(xiàn)形式。其第一個參數(shù)是一個格式化字符串,描述了要返回的時間形式。第二個參數(shù)就是時間的數(shù)字表示,默認為當前的時間。

參數(shù):format:

*t":將返一個帶year(4位),month(1-12), day (1--31), hour (0-23), min (0-59), sec (0-61), wday (星期幾, 星期天為1), yday (年內(nèi)天數(shù)), and isdst (是否為日光節(jié)約時間true/false)的帶鍵名的表; 

若沒有"*t"則返回一個按C的strftime函數(shù)格式化的字符串;

若不帶參數(shù),則按當前系統(tǒng)的設置返回格式化的字符串 os.date() <=> os.date("%c")

例子:我當前PC時間,如圖:

代碼:

t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i,"->",v);
end

運行結果 :

運行結果和以上時鐘的秒,不一致,你想,截圖也要時間的,呵呵。

如果使用帶標記(見下表)的特殊字符串,os.data函數(shù)會將相應的標記位以時間信息進行填充,得到一個包含時間的字符串。

例子:

print(os.date("today is %A, in %B"))

print(os.date("%X", 906000490))

運行結果:

同時,也可以使用明確的字符串格式方式(例如"%m/%d/%Y")

例子:

print(os.date("%m/%d/%Y", 906000490))

運行結果:

<img src="http://atts.w3cschool.cn/attachments/image/cimg/ph2os.difftime (t2, t1)/h2p功能:返回t1到t2相差的秒數(shù) /pp例子:/pprecodet1 = os.time();for i = 0, 100000 do os.time();endt2 = os.time();print(string.format(" t1:="" %d="" t2:="" %d",t1,t2))="" print(os.date("%x",="" t1))="" t2))="" print(os.difftime(t2,="" t1));="" code="" pre="" p運行結果:="" p="" pimg="" elapsed="" time="" :="" %.2f\n",="" os.clock()="" -="" x));<="">

運行結果:


 

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號