zoukankan      html  css  js  c++  java
  • C#生成一个按时间排序的GUID

    /// <summary>
            /// 创建一个按时间排序的Guid
            /// </summary>
            /// <returns></returns>
            public static string GetID()
            {
                byte[] guidArray = Guid.NewGuid().ToByteArray();
                DateTime now = DateTime.Now;
    
                DateTime baseDate = new DateTime(1900, 1, 1);
    
                TimeSpan days = new TimeSpan(now.Ticks - baseDate.Ticks);
    
                TimeSpan msecs = new TimeSpan(now.Ticks - (new DateTime(now.Year, now.Month, now.Day).Ticks));
                byte[] daysArray = BitConverter.GetBytes(days.Days);
                byte[] msecsArray = BitConverter.GetBytes((long)(msecs.TotalMilliseconds / 3.333333));
    
                Array.Copy(daysArray, 0, guidArray, 2, 2);
                //毫秒高位
                Array.Copy(msecsArray, 2, guidArray, 0, 2);
                //毫秒低位
                Array.Copy(msecsArray, 0, guidArray, 4, 2);
                return new System.Guid(guidArray).ToString();
            }
    

      

  • 相关阅读:
    异常处理
    组合,封装
    自我介绍
    27python更多实例
    28python类代码编写细节
    29python运算符重载
    30python 类的设计
    31python类的高级主题
    32python异常基础
    33python异常编码细节
  • 原文地址:https://www.cnblogs.com/soulsjie/p/11864492.html
Copyright © 2011-2022 走看看