DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
            DateTime dtNow = DateTime.Parse(DateTime.Now.ToString());
            TimeSpan toNow = dtNow.Subtract(dtStart);
            string timeStamp = toNow.Ticks.ToString();
            textBox3.Text = timeStamp;上面的代码只能计算出10位的时间戳,形如这样:1256786494;怎么能计算出形如这样:1256786494234这种13位的时间戳呢!路过的指点一下。谢谢!

解决方案 »

  1.   

    string timeStamp = toNow.Ticks.ToString() + toNow.Milliseconds.ToString();
      

  2.   

    string timeStamp = ((int)toNow.TotalMilliseconds).ToString();
      

  3.   

    ?? DateTime.Ticks长度超过13位啊
      

  4.   

    写错了,应该是:
    string timeStamp = ((long)toNow.TotalMilliseconds).ToString(); 
      

  5.   

    Milliseconds再怎么转也是那几位精度啊
      

  6.   

    怎么可能,我每次取得都不一样的:            DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
                DateTime dtNow = DateTime.Now;
                Console.WriteLine((long)(dtNow - dtStart).TotalMilliseconds);
      

  7.   

                System.Diagnostics.Stopwatch st2 = new System.Diagnostics.Stopwatch();
                st2.Start();            
                DateTime dtNow = DateTime.Parse(DateTime.Now.ToString());
                TimeSpan toNow = dtNow.Subtract(dtStart);
                string timeStamp = toNow.Ticks.ToString();
                st2.Stop();
                textBox3.Text = st2.ElapsedMilliseconds.tostring();你用这个类就可以了System.Diagnostics.Stopwatch 精确到毫秒级...!