大家好,我现在有一个byte[],里边全是二进制数据,我要如何把它转换成一个字符串(即恢复原形)
如:字符串string str = "世界你好123"转换为二进制数组byte[] b = new byte[]{0101010111101110},假如是向上述,使用C# winform应如何由str转换为b,反过来又如何由b转换为str?
谢谢各位大虾的指教!

解决方案 »

  1.   

    你这不就是加密解密麽,要有你自己的key吧
    不知道我理解对啵
      

  2.   

    首先,你的例子举得非常不当,没有这样声明byte[]的,语法上就是错误的。
    然后,你是要看到字符串的十六进制表示形式呢?还是要加密到byte[]当中,如果仅仅看十六进制表示形式,还需要确定编码,可以是Ascii编码,也可以是UTF8或Unicode编码,最后使用Encoding类即可获得byte[]
      

  3.   

    看看这个:      string和byte[]的转换 (C#)
      

  4.   

    byte[] a =new byte[8];
    string k="1234567";
    byte[] str;
    str = System.Text.Encoding.Default.GetBytes( k );//这里是转成了byte数组
    string s;
    s=System.Text.Encoding.Default.GetString(str);//这里又把str数组转回字符
    代码没测试过,自己可以测试看看
      

  5.   

            static void Main(string[] args)
            {
                string str = "Hello World 123";
                byte[] b = new byte[str.Length];
                Console.WriteLine(str);
                for (int i = 0; i < str.Length; i++)
                {
                    b[i] = (byte)str[i];
                    Console.Write(Convert.ToString(str[i], 2) + " ");
                }
                Console.WriteLine();
                for (int i = 0; i < b.Length; i++)
                {
                    b[i] = (byte)str[i];
                    Console.Write((char)b[i]);
                }
                Console.ReadKey();
            }中文在byte里是存不下的 要拆字