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

 

posted @ 2016-09-13 20:50  shiningrise  阅读(3638)  评论(1编辑  收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css