string转成byte[]存成什么 是ASCII吗

如题在网络中都要把string转换成byte[]才能传输是把char转换成ASCII吗如果是那是一个char(字符)对应一个字节吗谢谢如果是这个呢保存的是什么格式Syst... 如题 在网络中都要把string转换成byte[]才能传输是把char转换成ASCII吗
如果是那是一个char(字符)对应一个字节吗 谢谢
如果是这个呢保存的是什么格式 System.Text.Encoding.Default.
展开
 我来答
哨兵V小将
推荐于2017-09-01 · TA获得超过179个赞
知道小有建树答主
回答量:266
采纳率:100%
帮助的人:121万
展开全部
  并不一定是ASCII码。
  1、 在java语言中,String 对象通过方法geBytes()可以获得byte[]对象,
  它实际上是把内部的char字符,按照平台默认的字符集编码成byte数组,
  2、 此外,也可以使用getBytes(Charset charset)指定字符集编码。
  3、 byte[] 既可以理解为数组,它本身也是个对象,在该数组中,每个数组成员都是
  基础数据类型byte,表达范围是-128 至 127。
  4、 所以,如果按照uinicode字符集来转换的话,如包含非英文字母的String 对象转换成的byte[],它的成员可能会超出ASCII码的表示范围。
  例如,“汉字”的编码UTF-8编码为 {0xE6,0xB1,0x89,0xE5,0xAD,0x97}(摘自百度百科"Unicode“),如果将其转换为byte[],它的每个成员的值都会超出ASCII码的范围。
萝卜天使
推荐于2017-09-10 · TA获得超过149个赞
知道小有建树答主
回答量:166
采纳率:0%
帮助的人:147万
展开全部
需要看你使用的那种编码格式,如果想让数组保存ascII,用如下方法:

string s = "abcdefg";
byte[] bytes= Encoding.ASCII.GetBytes(s);

关于补充的回答:
如果使用System.Text.Encoding.Default方式,使用的是你电脑的默认编码格式,中国一般为gbk或者gb2312
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式