0

我的代码:

XmlDocument xml1 = new XmlDocument();
        XmlDocument xml2 = new XmlDocument();
        xml1.Load("http://www.oztivo.net/xmltv/FMDRA_2013-05-31.xml.gz");
        xml2.Load("http://www.oztivo.net/xmltv/GEM-ACT_2013-05-16.xml.gz");

我的问题是,在第一次页面加载时一切正常,但在刷新时它给了我一个错误:

'', hexadecimal value 0x1F, is an invalid character. Line 1, position 1.

有谁知道如何解决这个问题?

4

1 回答 1

1

您可以使用HttpWebRequestAutomaticDecompression属性自动解压缩“gziped”文件:

HttpWebRequest request = HttpWebRequest.CreateHttp("http://www.oztivo.net/xmltv/FMDRA_2013-05-31.xml.gz");
request.AutomaticDecompression = DecompressionMethods.GZip;

WebResponse response = request.GetResponse();

XmlDocument xml1 = new XmlDocument();
xml1.Load(response.GetResponseStream());

[更新]注意:

事实上,在测试您的网址时,我们可以看到它们已被“压缩”。如果您尝试从 Web 浏览器访问 URL,您将看到显示的 XML 内容,因为 Web 浏览器解压缩了内容。

[Update2] CreateHttp可从 .NET 4 或更高版本获得。(HttpWebRequest)WebRequest.Create如果使用 .NET < .NET 4,您可以这样做

于 2013-05-28T12:14:30.877 回答