从URL问题加载XML文档

时间:2013-05-28 11:35:48

标签: xml c#-4.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.

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

1 个答案:

答案 0 :(得分: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());

[更新] 注意:

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

<强> [UPDATE2] 可以从.NET 4或更高版本获得CreateHttp。如果使用.NET&lt; (HttpWebRequest)WebRequest.Create,则可以执行{{1}}。 .NET 4