欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# GUID ToString的使用總結(jié)

 更新時(shí)間:2021年02月02日 11:36:19   作者:  
這篇文章主要介紹了C# GUID ToString的使用總結(jié),幫助大家更好的理解和使用c#,感興趣的朋友可以了解下

最近在看到小伙伴直接使用 Guid.ToString 方法,我告訴他需要使用 Guid.ToString(“N”) 的方式輸出字符串 ,為什么需要使用 N 這個(gè)參數(shù)呢,因?yàn)槟J(rèn)的是參數(shù) D 在輸出的時(shí)候會(huì)出現(xiàn)連字符

Guid 是 Globally Unique Identifier 全局唯一標(biāo)識(shí)符的縮寫,是一種由算法生成的唯一標(biāo)識(shí),在 C# dotnet 里面的 Guid 類是微軟的UUID標(biāo)準(zhǔn)的實(shí)現(xiàn)。

Guid.ToString 里面可以添加下面幾個(gè)參數(shù),“N”,“D”,“B”,“P”,“X” 等

如果直接使用 Guid.ToString() 那么就是使用 “D” 這個(gè)參數(shù),添加了這個(gè)參數(shù)之后的輸出格式大概如下,也就是在字符串中添加連字符

00000000-0000-0000-0000-000000000000
536b4dd7-f3dd-4664-bd69-bc0859d710ab

如果使用 “N” 那么就是只有32位數(shù)字,沒有連字符,這里的數(shù)字是 16 進(jìn)制表示的,也就是說字符串有 a-f 這幾個(gè)英文字符和 0-9 的數(shù)字

00000000000000000000000000000000
2329fcac4fd640f1bc221e254b14d621

在我的業(yè)務(wù)里面,沒有連字符看起來比較好看,于是我就建議小伙伴使用 Guid 的字符串輸出的時(shí)候加上 N 這個(gè)參數(shù)

而在 Guid 格式化輸出里面,可以選的參數(shù)中的 B 和 P 這只是在使用括號(hào)包字符串,如以下代碼

      System.Console.WriteLine(Guid.NewGuid().ToString("B"));
      {e34dead4-212d-442a-8f4c-e00107baec24}
System.Console.WriteLine(Guid.NewGuid().ToString("P"));
(ac10d607-2b39-448f-99b5-0a3205cc9ac1)

從代碼可以看到 B 使用 { 括號(hào)包含內(nèi)容 ,使用參數(shù) P 將使用 ( 括號(hào)包含內(nèi)容

在 Guid 格式化中的最特殊的是 x 參數(shù),他會(huì)存在 4 個(gè)數(shù)字,最后一個(gè)數(shù)字是 8 個(gè)數(shù)字組合的,如下面代碼

  Console.WriteLine(Guid.NewGuid().ToString("X"));
 {0xd3f51d9d,0x31b3,0x45f6,{0x9b,0x7c,0x89,0x1d,0xa5,0x6a,0xa3,0x43}}

GUID 轉(zhuǎn) int

一個(gè) GUID 需要 16 個(gè) byte 也就是 4 個(gè) int 才能組成,可以使用下面的方法轉(zhuǎn)換

   public static int[] Guid2Int(Guid value)
    {
      byte[] b = value.ToByteArray();
      int bint = BitConverter.ToInt32(b, 0);
      var bint1 = BitConverter.ToInt32(b, 4);
      var bint2 = BitConverter.ToInt32(b, 8);
      var bint3 = BitConverter.ToInt32(b, 12);
      return new[] {bint, bint1, bint2, bint3};
    }

    public static Guid Int2Guid(int value, int value1, int value2, int value3)
    {
      byte[] bytes = new byte[16];
      BitConverter.GetBytes(value).CopyTo(bytes, 0);
      BitConverter.GetBytes(value1).CopyTo(bytes, 4);
      BitConverter.GetBytes(value2).CopyTo(bytes, 8);
      BitConverter.GetBytes(value3).CopyTo(bytes, 12);
      return new Guid(bytes);
    }

本文會(huì)經(jīng)常更新,請(qǐng)閱讀原文: https://blog.lindexi.com/post/C-GUID-ToString.html ,以避免陳舊錯(cuò)誤知識(shí)的誤導(dǎo),同時(shí)有更好的閱讀體驗(yàn)。

以上就是C# GUID ToString的使用總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于C# GUID ToString的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 基于C#實(shí)現(xiàn)ModbusTCP服務(wù)器接口的方法

    基于C#實(shí)現(xiàn)ModbusTCP服務(wù)器接口的方法

    ModbusTCP服務(wù)器的本質(zhì)就是TCP服務(wù)器,根據(jù)識(shí)別ModbusTCP請(qǐng)求報(bào)文,返回對(duì)應(yīng)的ModbusTCP報(bào)文,今天給大家分享一下,如何基于C#來ModbusTCP服務(wù)器接口,需要的朋友可以參考下
    2025-01-01
  • automation服務(wù)器不能創(chuàng)建對(duì)象 解決方法

    automation服務(wù)器不能創(chuàng)建對(duì)象 解決方法

    本文主要介紹如何解決“automation服務(wù)器不能創(chuàng)建對(duì)象”錯(cuò)誤,從而解決Visual Studio.Net不能正常使用的問題,需要的朋友可以參考下。
    2016-06-06
  • C#中Type類的具體使用

    C#中Type類的具體使用

    C#中的Type類是System命名空間的核心組件,可通過typeof、GetType或Type.GetType獲取,支持檢查類型結(jié)構(gòu)、動(dòng)態(tài)創(chuàng)建對(duì)象及調(diào)用成員,下面就來具體介紹一下
    2025-07-07
  • C#對(duì)象與XMl文件之間的相互轉(zhuǎn)換

    C#對(duì)象與XMl文件之間的相互轉(zhuǎn)換

    本文是對(duì)C#中對(duì)象與XMl文件之間的相互轉(zhuǎn)換進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助
    2013-10-10
  • Unity實(shí)現(xiàn)全屏截圖以及QQ截圖

    Unity實(shí)現(xiàn)全屏截圖以及QQ截圖

    這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)全屏截圖以及QQ截圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • WinForm下 TextBox只允許輸入數(shù)字的小例子

    WinForm下 TextBox只允許輸入數(shù)字的小例子

    WinForm下 TextBox只允許輸入數(shù)字的小例子,需要的朋友可以參考一下
    2013-04-04
  • c#使用反射調(diào)用類型成員示例

    c#使用反射調(diào)用類型成員示例

    學(xué)習(xí)C#的時(shí)候就知道使用反射可以對(duì)我們編程提供極大的便利(動(dòng)態(tài)的獲取信息、調(diào)用類型成員、創(chuàng)建實(shí)例等等),下面示例說明一下使用方法
    2014-01-01
  • C#調(diào)用VB進(jìn)行簡(jiǎn)繁轉(zhuǎn)換的方法

    C#調(diào)用VB進(jìn)行簡(jiǎn)繁轉(zhuǎn)換的方法

    這篇文章主要介紹了C#調(diào)用VB進(jìn)行簡(jiǎn)繁轉(zhuǎn)換的方法,通過調(diào)用VB的動(dòng)態(tài)鏈接庫實(shí)現(xiàn)繁簡(jiǎn)轉(zhuǎn)換的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-02-02
  • C#如何使用XmlDocument訪問XML文件

    C#如何使用XmlDocument訪問XML文件

    本文介紹了XML文件的特點(diǎn)、用途、格式、示例、解析和處理方式,以及在C#中使用XmlDocument類進(jìn)行增刪改查操作的方法,XML文件是一種靈活的數(shù)據(jù)描述和存儲(chǔ)方式,適用于各種應(yīng)用場(chǎng)景,在C#中,通過XmlDocument類可以方便地對(duì)XML文件進(jìn)行操作
    2024-12-12
  • C#生成隨機(jī)驗(yàn)證碼代碼分享

    C#生成隨機(jī)驗(yàn)證碼代碼分享

    這篇文章主要分享了C#生成隨機(jī)驗(yàn)證碼代碼,另外附上使用示例,非常的簡(jiǎn)單實(shí)用,有需要的朋友可以參考下
    2014-10-10

最新評(píng)論