目录
  • 方法一:使用 ToString() 方法
  • 方法二:使用 Convert.ToString() 方法
  • 方法三:使用 BitConverter 类(适用于整型数值)

在C#中,将十进制数转换为十六进制可以通过以下几种方式实现:

方法一:使用 ToString() 方法

对于整数类型的十进制数,可以直接调用其 ToString() 方法,并传入格式字符串 "X" 或 "x" 来表示转换为十六进制。例如:

int decimalNumber = 10;
string hexadecimalNumber = decimalNumber.ToString("X"); // 输出 "A"

这里的 "X" 表示大写十六进制字母,若要输出小写十六进制字母,使用 "x":

string lowercaseHexadecimalNumber = decimalNumber.ToString("x"); // 输出 "a"

方法二:使用 Convert.ToString() 方法

果您需要对非整型数值(如 long 或 ulong)进行转换,或者希望显式指定转换的基数,可以使用 Convert.ToString() 方法:

long largeDecimalNumber = .png;
string hexNumber = Convert.ToString(largeDecimalNumber, 16); // 输出 "A"

方法三:使用 BitConverter 类(适用于整型数值)

对于整型数值,还可以利用 BitConverter 类将数值转换为字节序列,然后使用 BitConverter.ToString() 将字节序列转换为十六进制字符串。这种方式通常用于需要以特定字节顺序(如网络字节序)表示数值的情况:

int number = 10;
byte[] bytes = BitConverter.GetBytes(number);
string hexString = BitConverter.ToString(bytes).Replace("-", ""); // 输出 "0A"

注意:BitConverter 默认使用本地字节序。若需指定特定字节序,可以先调整字节顺序,然后再进行转换。

以上就是在C#中将十进制数转换为十六进制的常用方法。根据您的具体需求,选择合适的方式即可。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。