2
A
回答
11
你問幾件事情,所以這裏是我的答案:
我應該存儲在時代的日期?
一般是,存儲日期最好的方法是使用時期,由os.time
你如何比較和Lua日期返回的?
這取決於你想如何「比較」它們。
如果你只是想知道哪一個更新/更舊,那麼最簡單的最快的事情就是將它們存儲爲「時代」,然後做date1 < date2
;因爲這兩個日期都只是數字,這是高性能和乾淨的。
如果您想知道兩個給定日期之間經過了多少個月/天/年,那會更復雜一些。您將需要類似下面的代碼:
diff = os.date("*t", os.difftime(date1, date2))
在那個例子中,返回diff
類似於{year=1, month=5, day=1, hour=2, min=3, sec=40 ...}
我找性能表...
如果您經常使用os.date()
將時期轉換爲日期(例如,用於打印),那麼您可能需要將年,月等信息「緩存」到表中,因此您不必一次又一次地調用它。但是,只有在遇到糟糕的表現時才這樣做; 不預先優化。
日期的最佳字符串格式是什麼?
這完全取決於你想如何使用它們。例如,如果您的應用與另一個需要某種日期格式的服務進行交互,則在您的所有應用中使用該格式是有意義的。
如果沒有特別需要使用的格式,然後一個候選人是(%x
):
os.date("%x", date) -- 09/16/1998 (for example)
,讓你依賴於計算機的區域設置的字符串。這可能會或可能不會是理想的。
如果你想表示要在所有電腦一樣,獨立於它們的語言環境,你可能想嘗試的標準格式,如ISO 8601:
os.date("%Y-%m-%d", date) -- returns "1998-09-16" in all computers
這種格式有很多的優勢;最明顯的是按字母排序的日期也按時間順序排序。但最重要的一點是,許多軟件都準備好讀取/使用它。
您可以找到有關Programming in Lua, Section 22.1 - Date and Time並在lua-users wiki日期的信息。
相關問題
- 1. 日期格式和比較日期
- 2. JS日期格式和日期比較
- 3. 日期比較星期和年格式
- 4. 比較日期 - 日期格式問題
- 5. 解析ASP.Net JSON日期格式爲Lua?
- 6. 日期格式化和比較Javascript
- 7. 比較格式的日期
- 8. 格式的日期比較
- 9. 比較日期和時間的PHP日期格式?
- 10. 如何比較日期和今天的日期?日期格式爲dd-mm-yyyy?
- 11. 日期顯示和日期格式VBA
- 12. 格式相對日期
- 13. 新格式日期對象
- 14. 單元格中日期和日期的單獨對齊樣式
- 15. 日期在Lua
- 16. 比較格式化日期vba
- 17. 比較日期Java格式問題
- 18. SAS Proc比較 - 日期格式不同
- 19. Postgresql埃塞俄比亞日期格式
- 20. 比較長日期格式從偏好
- 21. 比較格式的日期在PHP
- 22. varchar格式的日期比較
- 23. 問題比較日期格式相同
- 24. MYSQL中的比較日期varchar格式
- 25. 以特定格式比較日期
- 26. Informatica中的日期格式比較
- 27. strftime格式比較日期間隔
- 28. JavaScript比較不同的日期格式?
- 29. 模式在Lua:統一不同的輸入日期格式
- 30. SSRS查詢日期格式和參數日期格式不同?
當我想查看日期之間的時間時,os.difftime是我關於它的方式。在lua用戶wiki上查找它是一個很好的例子。 – Josh 2012-03-05 03:35:53
@Josh任何推薦我傳遞的格式?我正在用幾種語言定義數據模型。 – chrislovecnm 2012-03-05 08:53:38