byte 是字节型,字节,就是储存数据的一种单位而已,一般用于二进制文件的读写。
char 是字符型,字符,就是单个的字母、数字、符号等等。string 是字符串型,字符串,就是若干个字符。而且 byte[] 和 char[] 都是数组类型,string 是变量类型,三者没法直接比较。要么是 byte[]、char[]、string[],要么 byte、char、string。如果要定义一个字符串变量,那么应该用 string;如果是一个字符串数组,那么应该用 string[]。
1. byte array -> char array
Byte[] b=new byte[5]{0x01,0x02,0x03,0x04,0x05};
Char[] c=Encoding.ASCII.GetChars(b);
2. char array -> byte array
view plaincopy to clipboardprint?
Char[] c=new char[5]{a,b,c,d,e}; Byte[] b=Encoding.Default.GetBytes(c); Char[] c=new char[5]{a,b,c,d,e};Byte[] b=Encoding.Default.GetBytes(c);
3.string 转换成 Char[]
view plaincopy to clipboardprint?
string ss="abcdefg"; char[] cc=s.ToCharArray(); string ss="abcdefg";char[] cc=s.ToCharArray();
4.Char[] 转换成string view plaincopy to clipboardprint?using System.Text; StringBuilder sb=new StringBuilder(); foreach(char c in cc) { sb.Append(c); } string s=sb.ToString(); using System.Text;
StringBuilder sb=new StringBuilder();
foreach(char c in cc) { sb.Append(c); } string s=sb.ToString();5.byte[] 与 string
view plaincopy to clipboardprint?
byte[] bb=Encoding.UTF8.GetBytes(ss); string s=Encoding.UTF8.GetString(bb); byte[] bb=Encoding.UTF8.GetBytes(ss);string s=Encoding.UTF8.GetString(bb);