小Z在维护老项目的时候发现老项目生成没有进行封装,所以自行捣腾了一个封装类,自己乐呵乐呵的玩玩。
.NET 下的Guid格式化有如下五种:
1.Guid.NewGuid().ToString("N")
获取32位不包含“-”号的GUID字符串
例如:1c64d58a9e834bfe8d053555d81453d0
2.Guid.NewGuid().ToString("D")
获取32位包含“-”号的GUID字符串,默认格式
例如:ae8672ac-a987-43f3-a7c2-ac7b3249ac7b
3.Guid.NewGuid().ToString("P")
获取32位包含“-”号的GUID被“(”、“)”包括的字符串
例如:(ccaf6b6a-6ad4-496c-806b-be6042d4ec4a)
4.Guid.NewGuid().ToString("B")
获取32位包含“-”号的GUID被“{”、“}”包括的字符串
例如:{d291250b-bb5a-424e-9072-3a44a107051a}
5.Guid.NewGuid().ToString("X")
获取4个被“{”、“}”包括的十六进制数,其中第四个值位8个被“{”、“}”包括的十六进制数字符串
例如:{0xdb944edd,0x27f1,0x4786,{0x92,0x95,0xca,0x8f,0x5a,0xc2,0xc5,0x08}}
小Z的工具类如下
GuidUtils.cs
using System;
namespace Demo.Utils
{
/// <summary>
/// Guid工具类
/// </summary>
public class GuidUtils
{
/// <summary>
/// 获取一个大写的字符串
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
private static string upper(string str)
{
return str.ToUpper();
}
/// <summary>
/// 获取32位不包含“-”号的GUID字符串
/// </summary>
/// <returns></returns>
public static string NewGuidFormatN(bool isUpper = false)
{
var guid = Guid.NewGuid().ToString("N");
return isUpper == true ? upper(guid) : guid;
}
/// <summary>
/// 获取32位包含“-”号的GUID字符串
/// </summary>
/// <param name="isUpper"></param>
/// <returns></returns>
public static string NewGuidFormatD(bool isUpper = false)
{
var guid = Guid.NewGuid().ToString("D");
return isUpper == true ? upper(guid) : guid;
}
/// <summary>
/// 获取32位包含“-”号的GUID被“(”、“)”包括的字符串
/// </summary>
/// <param name="isUpper"></param>
/// <returns></returns>
public static string NewGuidFormatP(bool isUpper = false)
{
var guid = Guid.NewGuid().ToString("P");
return isUpper == true ? upper(guid) : guid;
}
/// <summary>
/// 获取32位包含“-”号的GUID被“{”、“}”包括的字符串
/// </summary>
/// <param name="isUpper"></param>
/// <returns></returns>
public static string NewGuidFormatB(bool isUpper = false)
{
var guid = Guid.NewGuid().ToString("B");
return isUpper == true ? upper(guid) : guid;
}
/// <summary>
/// 获取4个被“{”、“}”包括的十六进制数,其中第四个值位8个被“{”、“}”包括的十六进制数字符串
/// </summary>
/// <param name="isUpper"></param>
/// <returns></returns>
public static string NewGuidFormatX(bool isUpper = false)
{
var guid = Guid.NewGuid().ToString("X");
return isUpper == true ? upper(guid) : guid;
}
}
}