C#實現(xiàn)tostring轉(zhuǎn)換成16進制的方法
在 C# 中,將整數(shù)或其他數(shù)據(jù)類型轉(zhuǎn)換為十六進制字符串可以使用 ToString 方法,并指定格式化字符串為 "X" 或 "x"。以下是詳細的實現(xiàn)方法和示例:
1. 整數(shù)轉(zhuǎn)換為十六進制字符串
使用 ToString 方法并指定格式化字符串為 "X"(大寫十六進制)或 "x"(小寫十六進制)。
示例代碼:
using System;
class Program
{
static void Main()
{
int number = 29; // 十進制數(shù)
string hexUpper = number.ToString("X"); // 大寫十六進制
string hexLower = number.ToString("x"); // 小寫十六進制
Console.WriteLine(hexUpper); // 輸出: 1D
Console.WriteLine(hexLower); // 輸出: 1d
}
}
2. 指定十六進制字符串的長度
如果需要固定長度的十六進制字符串,可以在格式化字符串中指定長度。例如,"X4" 表示生成 4 位大寫十六進制字符串,不足部分用前導(dǎo)零填充。
示例代碼:
using System;
class Program
{
static void Main()
{
int number = 29;
string hexFixedLength = number.ToString("X4"); // 4 位大寫十六進制
Console.WriteLine(hexFixedLength); // 輸出: 001D
}
}
3. 將字節(jié)數(shù)組轉(zhuǎn)換為十六進制字符串
如果需要將字節(jié)數(shù)組(byte[])轉(zhuǎn)換為十六進制字符串,可以使用 BitConverter 類或手動實現(xiàn)。
使用 BitConverter:
using System;
class Program
{
static void Main()
{
byte[] bytes = { 0x1D, 0x2A, 0x3F };
string hexString = BitConverter.ToString(bytes).Replace("-", "");
Console.WriteLine(hexString); // 輸出: 1D2A3F
}
}
手動實現(xiàn):
using System;
using System.Text;
class Program
{
static void Main()
{
byte[] bytes = { 0x1D, 0x2A, 0x3F };
StringBuilder hexBuilder = new StringBuilder();
foreach (byte b in bytes)
{
hexBuilder.Append(b.ToString("X2")); // 每個字節(jié)轉(zhuǎn)換為 2 位十六進制
}
string hexString = hexBuilder.ToString();
Console.WriteLine(hexString); // 輸出: 1D2A3F
}
}
4. 將字符串中的字符轉(zhuǎn)換為十六進制
如果需要將字符串中的每個字符轉(zhuǎn)換為其十六進制表示,可以使用以下方法:
示例代碼:
using System;
using System.Text;
class Program
{
static void Main()
{
string input = "Hello";
StringBuilder hexBuilder = new StringBuilder();
foreach (char c in input)
{
hexBuilder.Append(((int)c).ToString("X2") + " "); // 每個字符轉(zhuǎn)換為 2 位十六進制
}
string hexString = hexBuilder.ToString().Trim();
Console.WriteLine(hexString); // 輸出: 48 65 6C 6C 6F
}
}
5. 將十六進制字符串轉(zhuǎn)換回整數(shù)
如果需要將十六進制字符串轉(zhuǎn)換回整數(shù),可以使用 Convert.ToInt32 或 int.Parse 方法。
示例代碼:
using System;
class Program
{
static void Main()
{
string hexString = "1D"; // 十六進制字符串
int number = Convert.ToInt32(hexString, 16); // 轉(zhuǎn)換為整數(shù)
Console.WriteLine(number); // 輸出: 29
}
}
6. 總結(jié)
- 使用
ToString("X")或ToString("x")將整數(shù)轉(zhuǎn)換為十六進制字符串。 - 使用
ToString("X4")生成固定長度的十六進制字符串。 - 使用
BitConverter或手動實現(xiàn)將字節(jié)數(shù)組轉(zhuǎn)換為十六進制字符串。 - 使用
Convert.ToInt32或int.Parse將十六進制字符串轉(zhuǎn)換回整數(shù)。
通過這些方法,可以輕松地在 C# 中實現(xiàn)十六進制和其他進制之間的轉(zhuǎn)換。
到此這篇關(guān)于C#實現(xiàn)tostring轉(zhuǎn)換成16進制的方法的文章就介紹到這了,更多相關(guān)C# tostring轉(zhuǎn)換成16進制內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
c# 使用Entity Framework操作Access數(shù)據(jù)庫的示例
本篇文章主要介紹了c# 使用Entity Framework操作Access數(shù)據(jù)庫的示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
DataGridView設(shè)置單元格的提示內(nèi)容ToolTip
這篇文章介紹了DataGridView設(shè)置單元格提示內(nèi)容ToolTip的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-02-02

