数据类型 互相转换

在写加解密和网络传输的时候,通常需要将参数转换成byte数组的形式,但是.Net在互相转换的时候却没有将转换的方式做在一起。
string-->byte[]
byte[] bytes = new UnicodeEncoding().GetBytes(str);

byte[]-->string
str = new UnicodeEncoding().GetString(bytes);
这样就能转换成base64位格式的字符串。不过如果你仔细查看byte[]就会发现,在每个byte后都会多一个0的字节,最后转换出来的字符串就不是原来的字符串了。
string str = "abcdefgh";
byte[] bytes = System.Text.Encoding.GetEncoding("gb2312").GetBytes(str);
str = new UnicodeEncoding().GetString(bytes);
str = Convert.ToBase64String(bytes);
           
byte[] bytes1 = Convert.FromBase64String(str);
string str1 = System.Text.Encoding.GetEncoding("gb2312").GetString(bytes1);
这样写就能解决上诉问题。
posted @ 2007-11-19 11:36  老鱼头  阅读(194)  评论(0编辑  收藏  举报