C# 二进制如何转成Byte[] 和 字符串

十六进制F5转成二进制是11110101,我要把11110101转成byte[],或者转成string,最后得到的byte[]或者string的值是什么,求代码... 十六进制F5转成二进制是 11110101,我要把11110101转成byte[] ,或者转成string ,最后得到的byte[]或者string的值是什么,求代码 展开
 我来答
百度网友ce7f3ccb4
推荐于2016-06-30 · TA获得超过1950个赞
知道大有可为答主
回答量:2299
采纳率:0%
帮助的人:1905万
展开全部
F5其实就是byte的16进制表现形式
byte[] bts=new byte[1]{0xF5}
你调试的时候你就会看到bts[0] 里面的值就是245;
int i=(int)bts[0];-> i的值为245
string str1=bts[0].ToString(); ->str1有可能是乱码
string str2=bts[0].ToString("X2");str2->值为F5
就这样!!
追问
为什么是0x?

string str2=bts[0].ToString("X2");str2->值为F5
X2 是啥意思?

呵呵 对这个不懂,求清晰指教
追答
0xF5代表是数字,也就是值,直接用F5的话,代表是一个变量
byte[] bts=new byte[1]{0xF5}正确
byte[] bts=new byte[1]{F5};错误,系统会提示F5未定义
byte F5=1;
byte[] bts=new byte[1]{F5};这样就是正确的。
string str2=bts[0].ToString("X2");其中的X2表示把byte转换成16进制字符串,也就是hex字符串
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式