C# GUID转换成16位字符串或19位数字并确保唯一

Posted 吴晓阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# GUID转换成16位字符串或19位数字并确保唯一相关的知识,希望对你有一定的参考价值。

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

 

以上是关于C# GUID转换成16位字符串或19位数字并确保唯一的主要内容,如果未能解决你的问题,请参考以下文章

C#和sqlserver中生成新的32位GUID

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

js怎么把20位数字字符串转换成数字,在线等

C++正则表达式:隐藏银行卡号倒数第5-8位数字,卡号的长度不是定长(16或19位),所以只能倒数.

C语言如何把11位16进制字符串转成16进制数?

在 JavaScript 中将两个 16 位数字组合并转换为一个 32 位数字(浮点数)