在 C# 中将字符串转换为十六进制
 
本教程将讨论在 C# 中将字符串转换为十六进制的方法。
在 C# 中使用 BitConverter.ToString() 方法将字符串转换为十六进制
    
如果我们有一个包含以 10 为底的数值的字符串,并且需要将其转换为包含以 16 为底的数值的字符串,我们可以使用 BitConverter.ToString() 方法。C# 中的 BitConverter.ToString(x) 方法将字节数组 x 中的每个元素转换为十六进制值。要使用 BitConverter.ToString() 方法,我们必须使用 Encoding.Default.GetBytes() 方法将字符串变量转换为字节数组。此方法将字符串变量转换为 C# 中的字节数组。BitConverter.ToString() 方法返回一个十六进制字符串,其中每个值都用 - 分隔。我们可以使用 String.Replace() 方法删除 - 分隔符。
using System;
using System.Linq;
using System.Text;
namespace string_to_hex {
  class Program {
    static void Main(string[] args) {
      string decString = "0123456789";
      byte[] bytes = Encoding.Default.GetBytes(decString);
      string hexString = BitConverter.ToString(bytes);
      hexString = hexString.Replace("-", "");
      Console.WriteLine(hexString);
    }
  }
}
输出:
30313233343536373839
在上面的代码中,我们使用 C# 中的 BitConverter.ToString() 方法将具有十进制值的字符串 decString 转换为具有十六进制值的字符串 hexString。
在 C# 中使用 String.Format() 方法将字符串转换为十六进制
    
String.Format() 方法根据 C# 中给定的格式说明符设置字符串格式。{0:X2} 格式说明符指定十六进制格式。我们可以在 String.Format() 方法内使用 {0:X2} 格式说明符,以将具有十进制值的字符串格式化为具有十六进制值的字符串。我们可以使用 LINQ 轻松地将十进制字符串的每个字符格式化为十六进制格式。
using System;
using System.Linq;
using System.Text;
namespace string_to_hex {
  class Program {
    static void Main(string[] args) {
      string decString = "0123456789";
      var hexString =
          string.Join("", decString.Select(c => String.Format("{0:X2}", Convert.ToInt32(c))));
      Console.WriteLine(hexString);
    }
  }
}
输出:
30313233343536373839
在上面的代码中,我们使用 String.Format() 方法和 C# 中的 LINQ 将具有十进制值的字符串变量 decString 转换为具有十六进制值的字符串变量 hexString。
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn相关文章 - Csharp String
- C# 将字符串转换为枚举类型
- C# 中将整形 Int 转换为字符串 String
- 在 C# 中的 Switch 语句中使用字符串
- 如何在 C# 中把一个字符串转换为布尔值
- 如何在 C# 中把一个字符串转换为浮点数
- 如何在 C# 中将字符串转换为字节数组
