zoukankan      html  css  js  c++  java
  • GUID转换成16位字符串或19位唯一字符串

    整理几个经常使用GUID转换成16位字符串或19位唯一字符串方法:

            /// <summary>
            /// 依据GUID获取16位的唯一字符串
            /// Author  : 付义方  
            /// </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位的唯一数字序列
            /// Author  : 付义方  
            /// </summary>
            /// <returns></returns>
            public static long GuidToLongID()
            {
                byte[] buffer = Guid.NewGuid().ToByteArray();
                return BitConverter.ToInt64(buffer, 0);
            }
    
            /// <summary>
            /// 生成22位唯一的数字 并发可用
            /// Author  : 付义方  
            /// </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;
            }
    
            /// <summary>
            /// 生成22位唯一的数字 并发可用
            /// Author  : 付义方  
            /// </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;
            }

    希望以上分享对初学朋友有些帮助,谢谢。
    很多其它关注付义方技术博客:http://blog.csdn.net/fuyifang
    或者直接用手机扫描二维码查看很多其它博文:
    付义方CSDN博客二维码

  • 相关阅读:
    LeetCode100-相同的树
    LeetCode66-加一
    LeetCode102-二叉树的层序遍历
    dubbo协议端口
    http错误-413 Request Entity Too Large
    【Jeecg Vue】通过getAction的finally来最大程度避免影响主数据呈现
    图片压缩,用这个就够了
    信息数据安全,日常办公你就要注意这些!
    java笔记:流式编程 数组与List集合互转
    改状态,你会改吗?你真的会改吗?
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/8340341.html
Copyright © 2011-2022 走看看