"\r\n"??string str = "<OnlineChat><IP>192.168.0.23</IP><Port>3011</Port><ID>1</ID>";
str += "<ToID>1</ToID><Message>{\\rtf1\\ansi\\ansicpg936\\deff0\\deflang1033\\deflangfe2052{\\fonttbl{\\f0\\fnil\\fcharset134 \\'cb\\'ce\\'cc\\'e5;}}\r\n\\viewkind4\\uc1\\pard\\lang2052\\f0\\fs18 66\\par\r\n}\\r\\n</Message>";
str += "<Time>2003-8-16 10:52:03</Time></OnlineChat>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(str);MessageBox.Show(doc.GetElementsByTagName("Message").Item(0).InnerText);取得不对么?

解决方案 »

  1.   

    doc.GetElementsByTagName("Message")[0].innerText;可以吗?
      

  2.   

    it works for me:using System;
    using System.Xml;class TestXml
    {
      public static void Main()
      {
    string s= @"<OnlineChat>
    <IP>192.168.0.23</IP>
    <Port>3011</Port>
    <ID>1</ID>
    <ToID>1</ToID>
    <Message>{\\rtf1\\ansi\\ansicpg936\\deff0\\deflang1033\\deflangfe2052{\\fonttbl{\\f0\\fnil\\fcharset134 \\'cb\\'ce\\'cc\\'e5;}}\r\n\\viewkind4\\uc1\\pard\\lang2052\\f0\\fs18 66\\par\r\n}\r\n</Message>
    <Time>2003-8-16 10:52:03</Time>
    </OnlineChat>"; XmlDocument xd = new XmlDocument();
    xd.LoadXml(s);
    string str = xd.GetElementsByTagName("Message")[0].InnerText;
    Console.WriteLine(str);
    string str1 = xd.LastChild.LastChild.PreviousSibling.InnerText;
    Console.WriteLine(str1);
      }
    }