【C#基础】byte二进制数组转string

     //解析post请求数组返回的数组
     //解码返回的二进制数组
        public string DecodeBytes(byte[] c)
        {
            string html = string.Empty;
            try
            {
                byte[] d = c;
                //Array.Copy(c, 44, d, 0, c.Length - 44);
                byte[] f = null;
                using (MemoryStream stream = new MemoryStream())
                {
                    using (GZipStream gZipStream = new GZipStream(new MemoryStream(d), CompressionMode.Decompress))
                    {
                        byte[] bytes = new byte[409600];
                        int n;
                        while ((n = gZipStream.Read(bytes, 0, bytes.Length)) != 0)
                        {
                            stream.Write(bytes, 0, n);
                        }
                        gZipStream.Close();
                    }
                    f = stream.ToArray();
                }
                html = System.Text.Encoding.UTF8.GetString(f);
            }
            catch (Exception ex)
            {
                html = ex.Message + "原始数据:" + System.Text.Encoding.Default.GetString(c);

                LogHelper.Log.Error("解码返回的二进制数组异常", ex);
            }
            return html;
        }

 

posted @ 2016-09-27 10:19  李0539  阅读(5026)  评论(3编辑  收藏  举报