下面的代码会产生错误的结果。写线十六进制字符串是9BFF,正确的值是FF9B。我做错什么了?
using System;
public class Program
{
public static void Main()
{
short s = -101;
short x = unchecked((Int16)0xff9B);
string hex = Convert.ToHexString(BitConverter.GetBytes(s));
Console.WriteLine(hex);
Console.WriteLine(x);
Console.WriteLine(Convert.ToInt16(hex,16));
}
}结果:
9BFF
-101
-25601发布于 2022-05-24 10:18:25
您可以使用ToString使用"X"或"x" (十六进制格式说明符):
public static void Main()
{
short intValue = -101;
string hex = intValue.ToString("X");
Console.WriteLine(hex);
}https://stackoverflow.com/questions/72361024
复制相似问题