C#中字符串转换成16进制BYTE数组

2025-04-10 00:51:22
推荐回答(2个)
回答1:

具体不怎么了解你的需求,如果你是想将"123"这个字符串转换为byte数组的话那就用
byte[] byts = new System.Text.UnicodeEncoding().GetBytes("123");
这样byts这个byte数组变量就是"123"转换的byte数组

如果你是想将整个"123"数字字符串变成16进制再求这个16进制数的byte值的话
就可以这样写
byte byts=(byte)Convert.ToInt32("123",16);

如果你想将字符串数组中的内容转换成单个的Int值的再转成16进制,再转成byte数组的话,那帮你举个列子
1、2、3的16进制ASCII码分别为31、32、33
byte[] byts=new byte[3];
byts[0]=(byte)0x31;
byts[1]=(byte)0x32;
byts[2]=(byte)0x33;

回答2:

你说的那个数组的我没用过 ,不过我有转换成16进制的方法
string ab="123";
int ac = Convert.ToInt32(ab);
ab = ac.ToString("x");
ab="7b"
下边的x后边的10标示字符串会自动在前边加0补足到10位,
string aaa = ac.ToString("x10");
aaa="000000007b"
希望你你能用到