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

      

  • 相关阅读:
    hdu
    HUNAN 11567 Escaping (最大流)
    poj -1185 炮兵阵地 (经典状压dp)
    poj
    POJ 2955 Brackets (区间dp)
    csu
    poj
    CSU 1116 Kingdoms
    SPOJ-SQRBR Square Brackets
    退役贴
  • 原文地址:https://www.cnblogs.com/soulsjie/p/11864492.html
Copyright © 2011-2022 走看看