ulua lua中的时间戳实现中出现的数值类型问题,long错误不能识别的解决方案

ulua中的时间戳

第一种c#方法:

/// 
        /// Gets the time.  cgq“yeg°ãó{
        /// 
        /// The time.

        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);

        }



        /// 

        /// Gets the time unix stamp.

        /// 

        /// The time unix stamp.

        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支持,简单高效

你可能感兴趣的:(unity3d开发,unity3d,c#,ulua,lua)