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

如何将Unicode字符转换为其等效的ASCII

如何将Unicode字符转换为其等效的ASCII

C#
jeck猫 2019-10-21 14:45:57
这是问题所在:在C#中,我从旧的ACCESS数据库中获取信息。在将内容交给我之前,.NET将数据库的内容(在这种情况下为字符串)转换为Unicode。如何将该Unicode字符串转换回等效的ASCII?编辑Unicode char 710确实是MODIFIER LETTER CIRCUMFLEX ACCENT。这是更精确的问题: ->(扩展)ASCII字符ê(扩展ASCII 136)已插入数据库中。 -> Access或.NET中的阅读组件都将其转换为U + 02C6 U + 0065    (修饰符大写字母重音+拉丁文小写字母E) ->我需要返回(扩展)ASCII字符136。这是我尝试过的方法(现在我知道为什么它不起作用了……):string myInput = Convert.ToString(Convert.ToChar(710));byte[] asBytes = Encoding.ASCII.GetBytes(myInput);但这不会产生94,而是一个值63的字节。这是一个新尝试,但仍然无法正常工作:byte[] bytes = Encoding.ASCII.GetBytes("ê");
查看完整描述

3 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

您不能在此处使用默认的ASCII编码(Encoding.ASCII),但必须使用Encoding.GetEncoding(...)使用适当的代码页创建编码。您可能会尝试使用代码页1252,它是ISO 8859-1的超集。


查看完整回答
反对 回复 2019-10-21
  • 3 回答
  • 0 关注
  • 468 浏览

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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