byte与string类型的转换

byte转换为string类型很简单,只要利用,Encoding.UTF8.GetString()函数即可。但是转换时应该注意一个问题。

在C语言中对于一个char数组,如果有个‘\0’做结尾,对于这个字符数组可以当作字符串来用。

char a[10]="123456789\0";
printf("%s",a);

输出的结果为:

123456789|

光标会紧跟在9的后面。

而对于C#中,byte数组无法被识别末尾的‘\0’,如下代码.

byte[] a = Encoding.UTF8.GetBytes("123456789\0");
Console.Write(Encoding.UTF8.GetString(a));

输出为:

123456789 |

光标的位置与9中间会有一个空格,这个空格就是'\0',也就是说末尾的'\0'是无法被识别出来的。

posted @ 2013-06-20 20:04  yts1dx  阅读(4416)  评论(0)    收藏  举报