为了账号安全,请及时绑定邮箱和手机立即绑定

编码转换问题

编码转换问题

慕容森 2018-11-20 05:02:06
代码如下[object Object]Code string src = "中文里有English能否正常显示?"; byte[] dftBytes = Encoding.Default.GetBytes(src); byte[] ascBytes = Encoding.Convert(Encoding.Default, Encoding.ASCII, dftBytes); string dst = Encoding.ASCII.GetString(ascBytes); Console.WriteLine(dst);好像是没什么问题啊,结果输出的是????English???????
查看完整描述

2 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

不能转换为 ASCII, 你可以看看你那个 ascBytes 的内容,所有的中文部分都是 值为 63 的字符,就是'?'

也就是说将中文转换为ASCII是,将原有信息丢失了。

建议转换为 UTF-8,当然按楼上所说转换为 GB2312也可以。


查看完整回答
反对 回复 2018-11-21
?
12345678_0001

TA贡献1802条经验 获得超5个赞

byte[] ascBytes = Encoding.Convert(Encoding.Default, Encoding.ASCII, dftBytes);

你把代码转为ASCII编码当然有问题了,是GB2312编码。


查看完整回答
反对 回复 2018-11-21
  • 2 回答
  • 0 关注
  • 411 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号