将Byte []数组转换为String

时间:2013-06-07 17:29:06

标签: c# encoding bytearray

我试过这个:

byte[] buffer = (byte[])mf.Input; 
    //Here, the buffer comes from a serial input
string result = System.Text.Encoding.UTF8.GetString(buffer)
string result2 = System.Text.Encoding.ASCII.GetString(buffer);

还有其他类似的方法。但它会返回一些奇怪的字符......我如何真正转换它?

这是我得到的价值:“ ?? 3?&?5?”
并且它假设给我一个Card IDB54A7WQ912 缓冲区值为:`buffer {byte [12]}

[0]168  
[1]63  
[2]18  
[3]63  
[4]21  
[5]...  
[6]....  
[7]....  
[8]...  
[9]...  
[10]...  
[11]...   

每个都有一个值。

更新
现在我可以Write/Read进入/来自RFID Mifare卡。但是á,ã,à,è这样的特殊字符没有显示,而是显示?。我该如何解决?谢谢 !

Obs:我正在使用上面的方法/ \

1 个答案:

答案 0 :(得分:0)

Encoding.GetString(byte[])是正确的方法,您必须选择正确的编码和/或确保发送给您的数据实际上是正确的格式。