C# 字符串string和内存流MemoryStream及比特数组byte[]之间相互转换
定义string变量为str,内存流变量为ms,比特数组为bt
1.字符串转比特数组
(1)byte[]bt=System.Text.Encoding.Default.GetBytes("字符串"); (2)byte[]bt=Convert.FromBase64String("字符串");
2.字符串转流
(1)MemoryStreamms=newMemoryStream(System.Text.Encoding.Default.GetBytes("字符串")); (2)MemoryStreamms=newMemoryStream(Convert.FromBase64String("字符串"));
3.流转比特数组
(1)byte[]bt=ms.ToArray(); (2)MemoryStreamms=newMemoryStream();ms.Write(bt,0,ms.Length);
4.流转字符串
(1)stringstr=Convert.ToBase64String(ms.ToArray()); (2)stringstr=System.Text.Encoding.Default.GetString(ms.ToArray());
5.比特数组转字符串
(1)stringstr=System.Text.Encoding.Default.GetString(bt); (2)stringstr=Convert.ToBase64String(bt);
6.比特数组转流
(1)MemoryStreamms=newMemoryStream(bt); (2)MemoryStreamms=newMemoryStream();ms.Read(bt,0,bt.Length);
总结:可以看出byte[]在字符串string和流MemoryStream之间转换起到过渡的作用,string和MemoryStream转换都要先转换成byte[]。