主题:浏览器编码的问题
我用下面的代码把一个网页下载了下来!但是出现一下以"&#"开头的字符,像:
"资料图片:波音737\x3cb\x3e飞机"
请问这些是什么字符,如何还原呢?
下载代码:
public void DownloadHtml(string downUrl, ref string context)
{
try
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(downUrl);
req.Timeout = 10000;
using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
using (Stream stream = resp.GetResponseStream())
using (MemoryStream mem = new MemoryStream())
{
int blockSize = 16384;
byte[] blockBuffer = new byte[blockSize];
int read = 0;
while ((read = stream.Read(blockBuffer, 0, blockSize)) > 0)
{
mem.Write(blockBuffer, 0, read);
}
mem.Seek(0, SeekOrigin.Begin);
byte[] binaryContent = mem.GetBuffer();
Encoding encoding = Encoding.UTF8;
context = encoding.GetString(binaryContent);
}
}
"资料图片:波音737\x3cb\x3e飞机"
请问这些是什么字符,如何还原呢?
下载代码:
public void DownloadHtml(string downUrl, ref string context)
{
try
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(downUrl);
req.Timeout = 10000;
using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
using (Stream stream = resp.GetResponseStream())
using (MemoryStream mem = new MemoryStream())
{
int blockSize = 16384;
byte[] blockBuffer = new byte[blockSize];
int read = 0;
while ((read = stream.Read(blockBuffer, 0, blockSize)) > 0)
{
mem.Write(blockBuffer, 0, read);
}
mem.Seek(0, SeekOrigin.Begin);
byte[] binaryContent = mem.GetBuffer();
Encoding encoding = Encoding.UTF8;
context = encoding.GetString(binaryContent);
}
}