C #에서 16 진수와 10 진수를 어떻게 변환합니까?
답변
십진수를 16 진수로 변환하려면 …
string hexValue = decValue.ToString("X");
16 진수를 10 진수로 변환하려면 다음 중 하나를 수행하십시오.
int decValue = int.Parse(hexValue, System.Globalization.NumberStyles.HexNumber);
또는
int decValue = Convert.ToInt32(hexValue, 16);
답변
16 진수-> 10 진수 :
Convert.ToInt64(hexValue, 16);
십진수-> 16 진수
string.format("{0:x}", decValue);
답변
말할 수있는 것 같아
Convert.ToInt64(value, 16)
16 진수에서 소수점을 구합니다.
다른 방법은 다음과 같습니다.
otherVar.ToString("X");
답변
16 진수에서 10 진수로 변환 할 때 최대 성능을 원하면 16 진수 값으로 미리 채워진 테이블에 접근 방식을 사용할 수 있습니다.
그 아이디어를 보여주는 코드는 다음과 같습니다. 내 성능 테스트에 따르면 Convert.ToInt32 (…)보다 20 % -40 % 빠릅니다.
class TableConvert
{
static sbyte[] unhex_table =
{ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,-1,-1,-1,-1,-1,-1
,-1,10,11,12,13,14,15,-1,-1,-1,-1,-1,-1,-1,-1,-1
,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
,-1,10,11,12,13,14,15,-1,-1,-1,-1,-1,-1,-1,-1,-1
,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
};
public static int Convert(string hexNumber)
{
int decValue = unhex_table[(byte)hexNumber[0]];
for (int i = 1; i < hexNumber.Length; i++)
{
decValue *= 16;
decValue += unhex_table[(byte)hexNumber[i]];
}
return decValue;
}
}
답변
// Store integer 182
int decValue = 182;
// Convert integer 182 as a hex in a string variable
string hexValue = decValue.ToString("X");
// Convert the hex string back to the number
int decAgain = int.Parse(hexValue, System.Globalization.NumberStyles.HexNumber);
답변
String stringrep = myintvar.ToString("X");
int num = int.Parse("FF", System.Globalization.NumberStyles.HexNumber);
답변
16 진수를 10 진수로 변환
Convert.ToInt32(number, 16);
10 진수를 16 진수로 변환
int.Parse(number, System.Globalization.NumberStyles.HexNumber)