[英]Convert hex value in C#
我正在嘗試將兩位十六進制值顯示為 16 位十六進制值。 即值 =81 到 0x0000000000000081 。 我已經完成了以下代碼:
public long GetHexNumber(long d)
{
return long.Parse(d.ToString("X"), System.Globalization.NumberStyles.HexNumber);
}
但上面的代碼返回相同的十六進制值,即 81 。 請幫忙
像這樣使用Int64.ToString() :
public string GetHexNumber(long d)
{
return d.ToString("X16");
}
X ... 用於轉換為 hexString
16...用於將其轉換為 16 位字符串
如果您希望它具有前導“0x”,請將其更改為:
return "0x" + d.ToString("X16");
讓我們從提供一個很好的測試示例開始,我們想要
81
)0x81
(我們機械地添加0x
)0x81 == 129
)像這樣的東西:
Value -> 0xValue
如果這是你的情況,解決方案可以是
// static: we don't have any need in "this" instance
public static long GetHexNumber(long value) {
return Convert.ToInt64(value.ToString(), 16);
}
測試
long test = 81;
Console.WriteLine(81);
// C# 6.0+ string interpolating
// if don't use C# 6.0, put it as formatting:
// Console.WriteLine("{0:X16}", GetHexNumber(test));
Console.WriteLine($"{GetHexNumber(test):X16}");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.