各位大哥们 谁能告诉我这是怎么回事 发送到对方手机上的中文全是乱码:?????... 这类字符的 这是我的源码 能看看有什么问题吗?? public string GetHtmlFromUrl(string url)
{
string strRet = null; if (url == null || url.Trim().ToString() == "")
{
return strRet;
}
string targeturl = url.Trim().ToString();
try
{
HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl);
hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
hr.Method = "POST";
hr.Timeout = 30 * 60 * 1000;
WebResponse hs = hr.GetResponse();
Stream sr = hs.GetResponseStream();
StreamReader ser = new StreamReader(sr, Encoding.Unicode);
strRet = ser.ReadToEnd();
}
catch (Exception ex)
{
strRet = null;
}
return strRet;
}
{
string strRet = null; if (url == null || url.Trim().ToString() == "")
{
return strRet;
}
string targeturl = url.Trim().ToString();
try
{
HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl);
hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
hr.Method = "POST";
hr.Timeout = 30 * 60 * 1000;
WebResponse hs = hr.GetResponse();
Stream sr = hs.GetResponseStream();
StreamReader ser = new StreamReader(sr, Encoding.Unicode);
strRet = ser.ReadToEnd();
}
catch (Exception ex)
{
strRet = null;
}
return strRet;
}
Encoding.Unicode 改掉试试
或者 你看看网页的编码
private static string SendDataByGET(string Url, string postDataStr)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
//if (cookie.Count == 0)
//{
// request.CookieContainer = new CookieContainer();
// cookie = request.CookieContainer;
//}
//else
//{
// request.CookieContainer = cookie;
//} request.Method = "GET";
request.ContentType = "text/html;charset=gb2312"; HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream myResponseStream = response.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("gb2312"));
string retString = myStreamReader.ReadToEnd();
myStreamReader.Close();
myResponseStream.Close(); return retString;
}
我用的,没问题,你问清楚你用的第三方接口要求什么编码,然后这里 StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("gb2312"));修改成响应编码就行了