从编码字节中获取字符串数据

时间:2011-02-08 07:44:34

标签: c#

我有一个字节数组来自条形码阅读器(通过COM端口连接)读取ID卡。当我转换它们时,我可以读取一些的数据,例如:

  

姓名,姓氏,城市

等,但如果某些数据有某些字符,如'Ë'或'Ç',或者某些字符在我们的语言中使用[编辑:OP在普里什蒂纳,科索沃],我会得到'?'。如何通过解码获得这些字符?

1 个答案:

答案 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);