none
如何获取其它网站某个网页返回的数据(xml) RRS feed

  • 问题

  • 例如:http://www.xxx.com/a.aspx?id=123返回数据是一个xml格式的数据,在asp.net文件里如何获取?
    2010年3月29日 14:17

答案

  • 你好!

    使用 XmlDocument.Load(url)。 也可以使用 WebClient 将文件下载下来,然后使用 xml 的操作类进行处理,也可以使用 DataSet 的 ReadXml 直接加载下载的 xml 内容。


    知识改变命运,奋斗成就人生!
    2010年3月30日 1:48
    版主
  • 你好,

     

    using System;
    using System.Xml;
    
    namespace ConsoleApplication
    {
        class Program
        {
            static void Main(string[] args)
            {
                // Xml文件路径
                string strPath = "http://www.xxx.com/a.aspx?id=123";
    
                // 加载Xml文档内容
                XmlDocument doc = new XmlDocument();
                doc.XmlResolver = null;
                doc.Load(strPath);
    
                // 显示Xml文档内容
                Console.WriteLine(doc.InnerXml.ToString().Replace("><", ">\r\n\n<"));
                // 读取Xml文档的处理指令
                XmlProcessingInstruction pi = (XmlProcessingInstruction)doc.SelectSingleNode("/processing-instruction(\"mso-infoPathSolution\")");
                // 显示处理指令的value
                Console.WriteLine(pi.Value);
    
                // 更新处理指令的value
                pi.Value = "updated value";
    
                // 显示更新后的处理指令value
                Console.WriteLine(pi.Value);
    
                // 创建新的处理指令
                XmlProcessingInstruction piNew = doc.CreateProcessingInstruction("new-pi", "my new processing instruction");
    
                // 将处理指令添加到文档中
                doc.InsertBefore(piNew, doc.ChildNodes[3]);
    
                // 删除处理指令
                XmlNode ndDel = doc.SelectSingleNode("/processing-instruction(\"mso-application\")");
                doc.RemoveChild(ndDel);
    
                // 显示更改后的Xml文档
                Console.WriteLine(doc.InnerXml.ToString().Replace("><", ">\r\n\n<"));
            }
        }
    }
    

    2010年3月30日 2:34
    版主

全部回复

  • 你好!

    使用 XmlDocument.Load(url)。 也可以使用 WebClient 将文件下载下来,然后使用 xml 的操作类进行处理,也可以使用 DataSet 的 ReadXml 直接加载下载的 xml 内容。


    知识改变命运,奋斗成就人生!
    2010年3月30日 1:48
    版主
  • 你好,

     

    using System;
    using System.Xml;
    
    namespace ConsoleApplication
    {
        class Program
        {
            static void Main(string[] args)
            {
                // Xml文件路径
                string strPath = "http://www.xxx.com/a.aspx?id=123";
    
                // 加载Xml文档内容
                XmlDocument doc = new XmlDocument();
                doc.XmlResolver = null;
                doc.Load(strPath);
    
                // 显示Xml文档内容
                Console.WriteLine(doc.InnerXml.ToString().Replace("><", ">\r\n\n<"));
                // 读取Xml文档的处理指令
                XmlProcessingInstruction pi = (XmlProcessingInstruction)doc.SelectSingleNode("/processing-instruction(\"mso-infoPathSolution\")");
                // 显示处理指令的value
                Console.WriteLine(pi.Value);
    
                // 更新处理指令的value
                pi.Value = "updated value";
    
                // 显示更新后的处理指令value
                Console.WriteLine(pi.Value);
    
                // 创建新的处理指令
                XmlProcessingInstruction piNew = doc.CreateProcessingInstruction("new-pi", "my new processing instruction");
    
                // 将处理指令添加到文档中
                doc.InsertBefore(piNew, doc.ChildNodes[3]);
    
                // 删除处理指令
                XmlNode ndDel = doc.SelectSingleNode("/processing-instruction(\"mso-application\")");
                doc.RemoveChild(ndDel);
    
                // 显示更改后的Xml文档
                Console.WriteLine(doc.InnerXml.ToString().Replace("><", ">\r\n\n<"));
            }
        }
    }
    

    2010年3月30日 2:34
    版主