在调试的时候
我看到字符串获得的是
13581525484\0\0\0\0\0\0\0\0\02009-08-11 17:08:42\0哈哈哈哈\r\n\r\nAntony\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
但是用MessageBox提示 只有 "13581525484"是怎么回事呢??

解决方案 »

  1.   

    string str = @System.Text.Encoding.Default.GetString(Mes);
    是这么获得的
      

  2.   

    用replace方法替换掉\0
    就可以了
      

  3.   

    13581525484\0\0\0\0\0\0\0\0\02009-08-11 17:08:42\0哈哈哈哈\r\n\r\nAntony\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ 
    \0是字符串结束符号. 读到\0不往下读了.
      

  4.   

    BitConverter.ToString(二进制字符串)
      

  5.   


    Number.Replace('\0','z'); 这么怎么换不掉啊?
      

  6.   


    你这个方法直接来了个
    31-33-35-38-31-35-32-35-34-38-34-00-00-00-00-00-00-00-00-00-32-30-30-39-2D-30-38-2D-31-31-20-31-37-3A-30-38-3A-34-32-00-B9-FE-B9-FE-B9-FE-B9-FE-0D-0A-0D-0A-41-6E-74-6F-6E-79-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
      

  7.   

    循环byte[],将0改为32(空格)然后再转字符串