C#中我用xmlDocument写XML,但我不保存成XML文件,我如何将写的这个XML数据再解析出来?
我想通过字符串(string)的XML解析出来,如何实现?

解决方案 »

  1.   

    改一下xml文件的后缀名为 XXX.txt,这些数据就变成字符串了!
      

  2.   

    http://zhidao.baidu.com/question/96277238.html
    想这样子的?
      

  3.   

    我用xmlDocument已经把数据从数据表里取出来,并生成了XML字符串,但我不保存到文件中,而是存在string中,这个字符串是这样:
    <?xml version="1.0" encoding="utf-8"?><Data><book ISBN="123456789"><title>C#高级编程</title><author>张三</author><price>58</price><Company>邮电出版社</Company></book><book ISBN="123456789"><title>富爸爸穷爸爸</title><author>李四</author><price>58</price><Company>清华出版社</Company></book></Data>
    ==============================
    我想把它解析出来,如何实现?
      

  4.   

    DOM模型
    XmlTextReader类的使用,查MSDN
      

  5.   

    string xmltext = "<?xml version ......  </Data>";
    System.Xml.XmlDocument xmldoc = new System.Xml.XmlDocument();
    xmldoc.LoadXml(xmltext)
      

  6.   

    先创建一个XmlDocument 然后声明标题,创建根节点,再创建父节点、子节点,这些你应该会吧,
    再创建一个 StringBuilder sb = new StringBuilder();  
    XmlWriterSettings setting = new XmlWriterSettings();
     XmlWriter writer = XmlWriter.Create(sb, setting);
    最后把writer 写信到 xmlDocument 对象中, 大致思路是这样,最后可以把这个XML格式作为一个字符串插入到数据库字段中。
      

  7.   

    doc是XmlDocument对象。        MemoryStream stream = new MemoryStream();
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, null);
            xmlWriter.Formatting = Formatting.Indented;
            doc.Save(xmlWriter);
            StreamReader sr = new StreamReader(stream, System.Text.Encoding.UTF8);
            stream.Position = 0;
            String xml = sr.ReadToEnd();
            sr.Close();
            stream.Close();        此时xml就是解析的doc的字符串。
      

  8.   

    XmlDocument xd = new XmlDocument();
    xd.LoadXml("<A><b>11111111</b><c>22222</c></A>");
    MessageBox.Show(xd.OuterXml);
      

  9.   

    我的意思是把字符串的XML中的节点值求出来,我现在已经把它OuterXml成String 了.比如我要从这个字符串把<title>的"C#高级编程"的值解析出来.
      

  10.   

    为你的节点值再次产生XmlDocument不就可以了吗?不过说真的,没有必要先转换成string后再去找里面的值。
      

  11.   

    有强大的XmlDocument 不用,你想自己再写一个xml解析引擎?
      

  12.   

    to 12楼
      不是我想写一个解析引擎,而是我调用别人的接口返回给我一个XML数据串,我想把它解析出来,不懂得如何去解.希望大家能给点支持.
      

  13.   

    如果就是单纯的解析XML字符串,那用正则是不是好些呢?
      

  14.   

    XmlDocument xd = new XmlDocument(); 
    string xmlString = 你的xml数据串;
    xd.LoadXml(xmlString);
      

  15.   

    LZ是要把 xml的文本读出来吧...XMLDocument xml = new XMLDocument;....xml.Save(路径)...在没保存前就还没有xml文件...那么那些节点字符串是在XmlNode里  循环XmlNode不知道XmlDocument 有没有什么方法直接把xml转换成string
      

  16.   

      XmlDocument xml = new XmlDocument();
      XmlDeclaration dec = xml.CreateXmlDeclaration("1.0", "UTF-8", "");
      xml.AppendChild(dec);
      XmlNode node = xml.CreateNode(XmlNodeType.Element, "aaa", "");
      xml.AppendChild(node);  string s = xml.OuterXml;