几种字符串到byte[] 数组转化为String 的方法 几种字符串到byte[] 数组转化为String 的方法 2023-01-24 738 将Byte数组转化为String <script language="javascript" src="/ad/js/edu_left_300-300.js" type="text/javascript"> </script> 问题 FCL得很多方法的返回值都是包含字符的Byte数组而不是返回一个String,这样的方法包含在如下的类中: · System.Net.Sockets.Socket.Receive · System.Net.Sockets.Socket.ReceiveFrom · System.Net.Sockets.Socket.BeginReceive · System.Net.Sockets.Socket.BeginReceiveFrom · System.Net.Sockets.NetworkStream.Read · System.Net.Sockets.NetworkStream.BeginRead · System.IO.BinaryReader.Read · System.IO.BinaryReader.ReadBytes · System.IO.FileStream.Read · System.IO.FileStream.BeginRead · System.IO.MemoryStream // Constructor · System.IO.MemoryStream.Read · System.IO.MemoryStream.BeginRead · System.Security.Cryptography.CryptoStream.Read · System.Security.Cryptography.CryptoStream.BeginRead · System.Diagnostics.EventLogEntry.Data 由这些方法返回的Byte数组中包含的通常是以ASCII编码或是Unicode编码的字符,很多时候,我们可能需要将这样的Byte数组转换为一个String。 解决方案 将一个包含ASCII编码字符的Byte数组转化为一个完整的String,可以使用如下的方法: using System; using System.Text; public static string FromASCIIByteArray(byte[] characters) { ASCIIEncoding encoding = new ASCIIEncoding( ); string constructedString = encoding.GetString(characters); return (constructedString); } 将一个包含Unicode编码字符的Byte数组转化为一个完整的String,可以使用如下的方法: public static string FromUnicodeByteArray(byte[] characters) { UnicodeEncoding encoding = new UnicodeEncoding( ); string constructedString = encoding.GetString(characters); return (constructedString); } 讨论 ASCIIEncoding类的GetString方法可以将byte数组中的7-BitsASCII字符转换为一个String;任何大于127的值将被转化为两个字符。在System.Text命名空间中你可以找到ASCIIEncoding类,查找该类的GetString函数你还可以发现这个函数有多种重载方式以支持一些附加的参数。这个方法的重载版本还可以将一个Byte数组中的一部分字符转化为String。 将Byte数组转化为String的GetString方法可以在System.Text命名空间的UnicodeEncoding类中找到,该方法将包含16-bitsUnicode字符的Byte数组转化为String。同ASCIIEncoding类的GetString方法一样,该方法也包含一个将Byte数组中的特定部分转化为String的重载版本。 免费搭建微信查券返利机器人来轻松赚佣金 文章来自:IT技术分享网 分享地址:http://www.5ityx.cn/cate100/224665.html 上一篇: .gitignore 文件不生效问题 & 解决方法 下一篇: .gitignore与.git/info/exclude区别 几种字符串到byte[] 数组转化为String 的方法 相关内容 .gitignore与.git/info/exclude区别 .gitignore文件忽略提交unpackage包到github仓库(uni-app) .gitignore是干什么的? .h5文件模型如何使用,并且给出代码 .lnk文件 和一种较新的.lnk病毒及解决方法 .xyz文件_Github历史记录搜索神器GitHistory.xyz /etc/profile文件使用source不能全局生效的解决方法 /usr/bin/ld: cannot find -l 基本原理解释与解决方法 10个国外设计网站(自学设计的童鞋建议收藏) 10个好玩到爆的网站,打开就能玩,个个超有趣 10个开源/免费的电子商务平台 10分钟学会python对接【OpenAI API篇】 10分钟教会你看眼图,太有用了!! 10分钟!快速部署ChatGPT微信公众号机器人! 10种寻址方式之间的区别 10行代码实现的接口平台:基于pandas和Flask