生成字母数字50字符长的GUID的更好方法

时间:2018-09-14 22:26:43

标签: c#

我正在生成2个GUID,并从中获取前50个字符。什么是更好的方法-

string tr1 = string.Join("", Guid.NewGuid().ToString("n"));
string tr2 = string.Join("", Guid.NewGuid().ToString("n"));

string full = ( tr1 + "@" + tr2).Left(50);

1 个答案:

答案 0 :(得分:0)

这不是您要的,但我认为这是您想要的:

  using System.Security.Cryptography;

  public static string Get50RandomHexNybls()
  {
      var bytes = new byte[25];
      var rand = new RNGCryptoServiceProvider();
      rand.GetBytes(bytes);
      return BitConverter.ToString(bytes).Replace("-", string.Empty);
  }

结果如下:

B7EB8387438D55CAEC2C9D4EE73E8B99BB146EEDA4F8A9CB48

每次都有不同的结果。如果您不喜欢我如何将字节转换为十六进制字符串,请查看“ How do you convert a byte array to a hexadecimal string, and vice versa"