标签:
1、int转十六进制:
int i = 16; Console.WriteLine(i.ToString("x"));//十六进制 Console.WriteLine(i.ToString("d"));//十进制
2、Byte数组中的数据转十六进制
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(); } } }
3、string字符串和Byte数组相互转换
//String To Byte[]:
byte[] byteArray = System.Text.Encoding.Default.GetBytes(str);
//Byte[] To String:
string str = System.Text.Encoding.Default.GetString(byteArray);
其实,在System.Text.Encoding class中,还有很多其它有用的方法,像GetChars,从一个byte[]转成一个char[],等等,可以参考MSDN。
另外,还有其它编码方式的,如System.Text.UTF8Encoding class、System.Text.UnicodeEncoding class等,根据不同需要可选不同的class。
另外一种方法是如下:
名称 | 说明 |
---|---|
BitConverter.ToString() | 出现运行时错误时,发生此事件 |
BitConverter.ToString(Byte[]) | 返回由字节数组的元素转换来的 String |
BitConverter.ToString(Byte[], Int32) | 返回由字节数组中从指定数组位置开始的元素转换来的 String |
BitConverter.ToString(Byte[], Int32, Int32) | 返回由字节数组中指定位置、指定数量的字节转换来的 String |
BitConverter.ToString(Byte[]) | 这个方法不行,得到的是byte数组的16进制字符串, 如"AH-0A-1A" |
StreamReader sr = new StreamReader(new MemoryStream(byteArray));
string str = sr.ReadToEnd();
//TODO:待补充
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/ghevinn/article/details/48026495