码迷,mamicode.com
首页 > 其他好文 > 详细

GUID获取16位19位22位的唯一字符串

时间:2018-08-16 19:46:14      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:数字   []   datetime   and   hmm   ext   字符   random   序列   

/// <summary>

    /// 根据GUID获取16位的唯一字符串

    /// </summary>

    /// <param name=\"guid\"></param>

    /// <returns></returns>

    public static string GuidTo16String()

    {

        long i = 1;

        foreach (byte b in Guid.NewGuid().ToByteArray())

            i *= ((int)b + 1);

        return string.Format("{0:x}", i - DateTime.Now.Ticks);

    }

    /// <summary>

    /// 根据GUID获取19位的唯一数字序列

    /// </summary>

    /// <returns></returns>

    public static long GuidToLongID()

    {

        byte[] buffer = Guid.NewGuid().ToByteArray();

        return BitConverter.ToInt64(buffer, 0);

    }

/// <summary>

    /// 生成22位唯一的数字 并发可用

    /// </summary>

    /// <returns></returns>

    public static string GenerateUniqueID()

    {

        System.Threading.Thread.Sleep(1); //保证yyyyMMddHHmmssffff唯一

        Random d = new Random(BitConverter.ToInt32(Guid.NewGuid().ToByteArray(), 0));

        string strUnique = DateTime.Now.ToString("yyyyMMddHHmmssffff") + d.Next(1000, 9999);

        return strUnique;

    }

GUID获取16位19位22位的唯一字符串

标签:数字   []   datetime   and   hmm   ext   字符   random   序列   

原文地址:https://www.cnblogs.com/guzhengtao/p/20180816_1752.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!