ulua lua中的時間戳實現中出現的數值型別問題,long錯誤不能識別的解決方案
ulua中的時間戳
第一種c#方法:
/// <summary>
/// Gets the time. cgq“yeg°ãó{
/// </summary>
/// <returns>The time.</returns>
public static double GetTime() {
TimeSpan ts = new TimeSpan(DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1, 0, 0, 0).Ticks);
return Math.Ceiling(ts.TotalMilliseconds/1000);
}
/// <summary>
/// Gets the time unix stamp.
/// </summary>
/// <returns>The time unix stamp.</returns>
public static double GetTimeUnixStamp() {
TimeSpan ts = new TimeSpan(DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1, 0, 0, 0).Ticks);
return Math.Ceiling(ts.TotalMilliseconds);
}
這兩種我都是用double去代替了,第二個方法精確一些,毫秒計時
因為double, int ,lua 可以很好的識別無需更改,轉換,穿進去就是number了,直接用,簡單
當然上面再怎麼好也不如原生的:
--直接獲取出來就是秒級別的時間戳不是毫秒計時,毫秒要用還是用c#實現
os.time()
總體是解決了,
但是還是希望有long支援,簡單高效