如题,比如:
将"aaaaaaaaaa"转成了一个字节组
然后将此组连成了一个字符串保存。
如何进行反操作,
从保存的字符串得到"aaaaaaaaaa"呢?

解决方案 »

  1.   

    string str1 = "hello world";
            // specifies the Encoding method
            Encoding encoding;
            encoding = System.Text.Encoding.UTF8;
            // also as 
            // encoding = System.Text.Encoding.Unicode;
            // encoding = System.Text.Encoding.GetEncoding("GB2312");
            // more encodings ...
            
            // string > bytes
            byte[] bytes = encoding.GetBytes(str1);
            // bytes > string
            string str2 = encoding.GetString(bytes);
            Response.Write(str2);Good luck!
      

  2.   

    然后将此组连成了一个字符串保存。
    -------------
    不会是这样吧~        string str1 = "hello world";
            // specifies the Encoding method
            Encoding encoding;
            encoding = System.Text.Encoding.UTF8;
            // also as 
            // encoding = System.Text.Encoding.Unicode;
            // encoding = System.Text.Encoding.GetEncoding("GB2312");
            // more encodings ...        // string > bytes
            byte[] bytes = encoding.GetBytes(str1);
            // joins the bytes
            string str2 = "";
            foreach (byte b in bytes) {
                str2 += b + ",";
            }
            if (str2.Length > 0) str2 = str2.Remove(str2.Length - 1, 1);
            // splits and converts the joined string to bytes
            string[] strArray = str2.Split(',');        
            byte[] bytes2  = Array.ConvertAll<string, byte>(strArray, delegate(string str){ return byte.Parse(str);});
            // bytes > string
            string str3 = encoding.GetString(bytes2);
            // out
            Response.Write("original string: " + str1);
            Response.Write("<br/>");
            Response.Write("joined bytes: " + str2);
            Response.Write("<br/>");
            Response.Write("recovered string: " + str3);Hope helpful!