今天在工作中遇到一个问题,如何将一个string类型转成byte[]?


  这种问题就属于知道了就及其简单,不知道就够你忙活半天的那种。其实只要一个语句就OK了:


  



byte[] byteArray = System.Text.Encoding.Default.GetBytes(  str  );


  怎么样,够简单吧?


  反过来也是一样,把byte[]转成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。

char[]是字符数组  

  每个char是一个Unicode编码字符   

byte[]是字节数组  

  每个byte是一字节无符号整数


1.char的长度是16位表示Unicode     

  byte的长度是8位表示ASCII   

2.byte范围是0   到   255,超过这个范围出错   

3.char转成byte,应该是取低八位