using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
byte[] b = {12,10,1,17};
for (int i = 0; i < b.Length; i++)
{
string a =Convert.ToString(b[i], 16);
Console.WriteLine("O"+a);
}
}
}
}
C# 16进制的转换
/十进制转二进制
Console.WriteLine("十进制166的二进制表示: "+Convert.ToString(166, 2));
//十进制转八进制
Console.WriteLine("十进制166的八进制表示: "+Convert.ToString(166, 8));
//十进制转十六进制 Console.WriteLine("十进制166的十六进制表示: "+Convert.ToString(166, 16));
//二进制转十进制
Console.WriteLine("二进制 111101 的十进制表示: "+Convert.ToInt32("111101", 2));
//八进制转十进制
Console.WriteLine("八进制 44 的十进制表示: "+Convert.ToInt32("44", 8));
//十六进制转十进制
Console.WriteLine("十六进制 CC的十进制表示: "+Convert.ToInt32("CC", 16));
实例:
字节数组转16进制字符串
///
/// 字节数组转16进制字符串
///
///
///
public static string byteToHexStr(byte[] bytes)
{
string returnStr = "";
if (bytes != null)
{
for (int i = 0; i < bytes.Length; i++)
{
returnStr += bytes[i].ToString("X2");
}
}
return returnStr;
}
1. 字节数组转为 整型,需要调用 BitConvert的 ToInt方法
2. 调用Convert.ToString(整型,进制数) 来转换为想要的进制数
3. 一个小示例如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
byte[] bytes = { 10, 12, 14, 16 };
int int32 = BitConverter.ToInt32(bytes, 0);
string hexStr = "0x" + Convert.ToString(int32, 16);
Console.WriteLine(hexStr);
Console.Read();
}
}
}
4. 运行结果如下:
希望对你有帮助~
转成 16 进制字符 能打印的 那种?
估计是。如果不是 那数据区中的数据内容,本来就是 1001 之类的,
你想当作 16 进制它就是 16进制,想当作 10 进制,就是 10 进制。
想看作是 2 进制都可以。
转为 16 进制字符的话,如下类似代码:
string[] c = new string[b.length];
for(int i=0;i
则对应的 字符数组 c 就是 你的
{"0C", "0A", "01", "10"...}
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
byte[] b = {12,10,1,17};
for (int i = 0; i < b.Length; i++)
{
string a =Convert.ToString(b[i], 16);
Console.WriteLine("O"+a);
}
}
}
}
应该有相应的函数。