我正在制作一个 c# 程序,它使用 ZXing 库生成 QRCode 以供 Windows Mobile 手持设备读取(c# 但专有条形码阅读器:Motorola Symbol)
我使用 winform 文本框将标签内容设置为 é
(锐音小写 e),并将其读取到我的设备,它显示为 Ú
(锐音大写 U)
当我使用 Android 条码扫描仪读取标签时,它显示为 é
...
[这里无法上传图片,稍后我会贴出条形码]
我想编码是这里的问题所以我查看了发送的字节数:233
在此网站上:http://www.ascii-code.com/ ,它表示 é
是 233,这是预期的行为。但是在这个网站上:http://www.theasciicode.com.ar/是说 é
是 130 而 Ú
是 233 ! (顺便说一下,我正在键入 Alt+233 以在我的 Windows 计算机上显示 Ú)
编辑:显然第一个网站显示 ISO-8859-1 (windows-1252) 字符。但问题仍然存在:根据第二个网站,é
编码为 130 的编码是 ?
编辑 2:我完全同意 UTF-8 可以轻松解决我的问题(适用于 android,但我不能告诉我的设备“嘿,这个条形码是 UTF-8 编码的!”所以它会显示原始信息,请参阅下面的答案。
- 发生了什么事? (编辑:已回答,单个符号编码不匹配)
- 一个字符有两个特定的 ASCII 值是否正常? (编辑:回答,使用了两种编码)
- 既然我收到了 233 代码,我该如何告诉手持设备转换这个值?
提前致谢!
最佳答案
对于同一个 ASCII 码,有 2 个不同的字符是正常的。阅读有关 ASCII 代码页的信息,例如 Win1250、1251、1252...
关于c# - 一个字符的不同 ASCII 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38527062/