我有一个字节数组来自条形码阅读器(通过COM端口连接)读取ID卡。当我转换它们时,我可以读取一些的数据,例如:
姓名,姓氏,城市
等,但如果某些数据有某些字符,如'Ë'或'Ç',或者某些字符在我们的语言中使用[编辑:OP在普里什蒂纳,科索沃],我会得到'?'。如何通过解码获得这些字符?
答案 0 :(得分:9)
您需要知道设备使用的相应Encoding
;它可以是UTF-16,例如,在这种情况下
string s = Encoding.Unicode.GetString(bytes);
或UTF-8:
string s = Encoding.UTF8.GetString(bytes);
但是对于您必须使用的区域编码/代码页:
string s = Encoding.GetEncoding(yourEncoding).GetString(bytes);