日期:2014-05-17  浏览次数:20898 次

求助,new StreamReader(dataStream, Encoding.Default)中文乱码

WebRequest request = WebRequest.Create(url);
                request.Credentials = CredentialCache.DefaultCredentials;
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                textBox2.Text = Convert.ToInt32(response.StatusCode) + " " + response.StatusCode.ToString();
                Stream dataStream = response.GetResponseStream();
                StreamReader reader = new StreamReader(dataStream, Encoding.Default);
                StringBuilder sb = new StringBuilder();
                string rl;
                while ((rl = reader.ReadLine()) != null)
                {
                    sb.Append(rl);
                } 

                //string responseFromServer = reader.ReadToEnd();
                textBox3.Text = rl;
为什么会出现乱码?怎么解决中文乱码问题?

------解决方案--------------------
Encoding.Default  改成 utf-8或是gb2312试试看  默认有时候不管用
------解决方案--------------------
楼主不要着急,乱码是很平常的问题,只要写入和读取时使用同样的编码格式就不会有问题,
而且常用的编码就三种:UTF8, UNICODE, GB2312