这是GBK16进制的字符串,通过电脑向设备发的数据。一点小分送上。string byteStr = "D6 D0 D0 C2 C9 E7 C0 AD C8 F8 31 30 D4 C2 32 38 C8 D5 B5 E7 20 31 30 D4 C2 32 38 C8 D5 C9 CF CE E7 A3 AC C0 AD C8 F8 D3 AD C0 B4 32 30 31 33 C4 EA C8 EB B6 AC D2 D4 C0 B4 CA D7 B3 A1 D1 A9 A1 A3 BE DD C0 AD C8 F8 CA D0 C6 F8 CF F3 BE D6 B5 D8 C3 F8 CF F3 BE D6 B5 E6 B9 A4 B3 CC CA A6 B4 CE C8 CA D3 F1 D5 E4 BD E9 C9 DC A3 AC B1 BE B4 CE BD B5 D1 A9 B4 D3 B5 B1 C8 D5 C9 CF CE E7 39 CA B1 34 35 B7 D6 BF AA CA BC E6 BA F3 D1 A9 CA C6 BC F5 C8 F5 A3 AC D6 C1 31 31 CA B1 B0 EB D7 F3 D3 D2 A3 AC D4 C6 BF AA CE ED C9 A2 A1 A3 BF";C#GBK16进制转中文GBKGBK HEX TO 中文16进制

解决方案 »

  1.   


    byte[] bytes = byteStr.Split(' ').Select(s => Convert.ToByte(s, 16)).ToArray();
    string str = Encoding.GetEncoding("GBK").GetString(bytes);
      

  2.   

    不可能,你原信息都没有“云开雾散”几个字。C9 CF CE E7 39 CA B1 34 35 B7 D6 BF AA CA BC A3 AC BD D8 D6 C1 31 31 CA B1 31 36
     B7 D6 A3 AC BD B5 CB AE C1 BF CE AA
    以上正确
    C9 CF CE E7 39 CA B1 34 35 B7 D6 BF AA CA BC E6 BA F3 D1 A9 CA C6 BC F5 C8 F5 A3
     AC D6 C1 31 31 CA B1 B0 EB D7 F3 D3
    以上乱码你自己比对下另外,我怀疑你是因为数据包接受的顺序不对造成的,很明显,云开雾散这个词语可能是在前文或者后文。