C# 中GUID生成格式的四种方法

C#中GUID的生成以及格式

1、GUID是在System命名空间下的结构(struct)体,下面展示实例。
(1)创建一个GUID帮助类(GUIDHelper)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace WebDemo.guid
{
  public class GuIdHelper
  {
    /// <summary>
    /// GUID生成
    /// </summary>
    /// <param name="format">格式 可填写N、D、B、P、X</param>
    /// <returns></returns>
    public static string GetNewGuId(string format="")
    {
      if (string.IsNullOrWhiteSpace(format))
        return Guid.NewGuid().ToString();
      else
        return Guid.NewGuid().ToString(format);
    }
  }
}

(2)使用实例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text;

namespace WebDemo.guid
{
  public partial class Index : System.Web.UI.Page
  {
    protected void Page_Load(object sender, EventArgs e)
    {

      StringBuilder str = new StringBuilder();
      string[] array = {"","N","D","B","P","X" };
      foreach (var item in array)
      {
        if (string.IsNullOrWhiteSpace(item))
          str.AppendFormat("默认格式:{0}", GuIdHelper.GetNewGuId());
        else
          str.AppendFormat("<br />{0}格式:{1}", item, GuIdHelper.GetNewGuId(item));
      }
      Response.Write(str.ToString());
    }
  }
}

(3)显示结果

默认格式:4575c4b3-7997-4f11-acd9-f107258e9adc
N格式:a53a7186b583483aa4580519034e8095
D格式:5ae7f002-a989-4345-864b-3bcfbe09e1da
B格式:{d9762660-8461-4c44-b714-8ffad6e1b79c}
P格式:(694ce704-0a7d-41d5-a25a-4eaedf7db50d)
X格式:{0x75198f26,0xac4e,0x42c8,{0x96,0x88,0xcc,0x91,0xe0,0xa6,0x9b,0x21}

在C#中GUID生成的四种格式

var uuid = Guid.NewGuid().ToString(); // 9af7f46a-ea52-4aa3-b8c3-9fd484c2af12 

var uuidN = Guid.NewGuid().ToString("N"); // e0a953c3ee6040eaa9fae2b667060e09  

var uuidD = Guid.NewGuid().ToString("D"); // 9af7f46a-ea52-4aa3-b8c3-9fd484c2af12 

var uuidB = Guid.NewGuid().ToString("B"); // {734fd453-a4f8-4c5d-9c98-3fe2d7079760} 

var uuidP = Guid.NewGuid().ToString("P"); // (ade24d16-db0f-40af-8794-1e08e2040df3) 

var uuidX = Guid.NewGuid().ToString("X"); // {0x3fa412e3,0x8356,0x428f,{0xaa,0x34,0xb7,0x40,0xda,0xaf,0x45,0x6f}} 

参考:https://msdn.microsoft.com/en-us/library/97af8hh4.aspx

(0)

相关推荐

  • C# 中GUID生成格式的四种方法

    C#中GUID的生成以及格式 1.GUID是在System命名空间下的结构(struct)体,下面展示实例. (1)创建一个GUID帮助类(GUIDHelper) using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace WebDemo.guid { public class GuIdHelper { /// <summary> /// GUID生成 /// &l

  • eclipse中自动生成构造函数的两种方法

    eclipse中如何自动生成构造函数 eclipse是一个非常好的IDE,我在写java程序的时候使用eclipse感觉开发效率很高.而且有很多的快捷和简便方式供大家使用,并且能直接生成class文件(不需要javac编译).今天给大家介绍一下如何生成一个类的构造函数. 方法一: 我创建了一个类,里面有两个私有属性age和name.现在构造两个构造函数,一个不带参数,一个带参数.右键->source->Generate Constructors from Superclass,创建一个空参的构

  • Python3中列表list合并的四种方法

    下面是[列表]合并的4种方法,其中的代码都在Python3下测试通过,在Python2下运行应该也没问题,时间关系就没测试,有任何问题欢迎给我留言. 方法1: 直接使用"+"号合并列表 | aList ``= [``1``,``2``,``3``] bList ``= [``'www'``, ``'pythontab.com'``] cList ``= aList ``+ bList dList ``= bList ``+ aList print``(cList) print``(dL

  • SQL Server数据库中批量导入数据的四种方法总结

    在软件项目实施的时候,数据导入一直是项目人员比较头疼的问题.其实,在SQL Server中集成了很多成批导入数据的方法.有些项目实施顾问头疼的问题,在我们数据库管理员眼中,是小菜一碟.现在的重点就是,如何让用户了解这些方法,让数据导入变得轻松一些. 第一:使用Select Into语句 若企业数据库都采用的是SQL Server数据库的话,则可以利用Select Into语句来实现数据的导入.Select Into语句,他的作用就是把数据从另外一个数据库中查询出来,然后加入到某个用户指定的表中.

  • PHP从数组中删除元素的四种方法实例

    茴香豆的"茴"字有四种写法,PHP从数组中删除元素也有四种方法 ^_^. 删除一个元素,且保持原有索引不变 使用 unset 函数,示例如下: <?php $array = array(0 => "a", 1 => "b", 2 => "c"); unset($array[1]); //↑ 你想删除的key ?> 输出: Array (     [0] => a     [2] =>

  • java map遍历的四种方法总结

    整理了关于java中map的遍历的四种方法: import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;import java.util.Set;publicclassMapTest{privateMap<String,String> map;publicMapTest(){  map =newHashMap<String,String>();

  • ASP.NET 使用 Dispose 释放资源的四种方法详细介绍

    目录 1. 创建一个实现 IDisposable 接口的类 2. 使用 "using" 语句处理 IDisposable 对象 3. 在请求结束时处理 IDisposable 对象 4. 使用内置的 IoC 容器处理 IDisposable 对象 5. 使用 IHostApplicationLifetime 事件处理 IDependency 对象 ASP.NET 使用 Dispose 释放资源的四种方法 Dispose 和 Finalize 是运行的 .NET 和 .NET Core

  • IOS中Json解析实例方法详解(四种方法)

    作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此"http://www.bejson.com/"网站来进行JSON格式化校验(点击打开链接).此网站不仅可以检测Json代码中的错误,而且可以以视图形式显示json中的数据内容,很是方便. 从IOS5开始,APPLE提供了对json的原生支持(NSJSONSerialization),但是为了兼容以前的iOS版本,可以使用第三方库来解析Json. 本文将介绍Tou

  • JS中循环遍历数组的四种方式总结

    本文比较并总结遍历数组的四种方式: for 循环: for (let index=0; index < someArray.length; index++) { const elem = someArray[index]; // ··· } for-in 循环: for (const key in someArray) { console.log(key); } 数组方法 .forEach(): someArray.forEach((elem, index) => { console.log(

  • Java中ArrayList初始化的四种方法详解

    1 起因 在实际业务开发中, 我们经常会遇到需要临时创建一个数组的情况, 今天我们就来讲一下Java中ArrayList初始化的方法 2 解决方案 直接上结论, 总共有四种初始化方法: 双括号法 Arrays.asList stream Lists 2.1 双括号法 List<Integer> test = new ArrayList<Integer>(){{ add(1); add(2); }}; 2.2 Arrays.asList List<Integer> tes

随机推荐