XML直接读取字符串内容

.Net技术 码拜 10年前 (2015-05-10) 1343次浏览 0个评论
 

XmlTextReader xmlread = new XmlTextReader(path);这是XML从一个文件中读取内容;
但如果我当前 有一个string str=”全法的XML内容”;
使用XmlTextReader 如何直接读取出str中内容作为XML文件内容;

XmlDocument xd = new XmlDocument();
            xd.LoadXml(str);
然后直接用xd取你想要色内容。
就要使用 XmlTextReader哈
XmlTextReader和XmlDocument的关系就是前者是允许一半边一边显示,后者是一次性读完。
基本上情况差不多。
另外操作xml或html,可以尝试下CYQ.Data.Xml.XmlHelper,操作起来比较想象的容易多了。
帮顶
  帮顶
  
40分
string xml = @"<?xml version=""1.0"" encoding=""utf-8"" ?>
                        <something>
                          <code>aa</code>
                          <name />
                        </something>";
            byte[] b = Encoding.UTF8.GetBytes(xml);
            MemoryStream ms = new MemoryStream(b);
            XmlTextReader reader = new XmlTextReader(ms);
            while (reader.Read())
            {
                if (reader.NodeType == XmlNodeType.Element && reader.Name == "code")
                    Console.WriteLine(reader.ReadString());
            }
            ms.Close();
            ms.Dispose();
            Console.ReadLine();
话说xmldocument不是比较容易点

            string xml = @"<?xml version=""1.0"" encoding=""utf-8"" ?>
                        <something>
                          <code>天天开心</code>
                          <name />
                        </something>";
            XmlDocument doc = new XmlDocument();
            doc.LoadXml(xml);
            XmlNode node = doc.SelectSingleNode("//code");
            Console.WriteLine(node.InnerText);
            Console.ReadLine();
To-huangwenquan123
能帮我解答个问题吗?我等你很久了
引用 7 楼 wang466791739 的回复:

To-huangwenquan123
能帮我解答个问题吗?我等你很久了

什么问题?还是之前那个吗?我回复在你帖子里了!

引用 8 楼 huangwenquan123 的回复:

引用 7 楼 wang466791739 的回复:
To-huangwenquan123
能帮我解答个问题吗?我等你很久了
什么问题?还是之前那个吗?我回复在你帖子里了!

是新的问题,我之前一直没发现。
描述如下:
猫扑论坛回复的个格式如下:

<li class="details">
<div class="inner">2499193917@qq.com</font></div>
</li>

这是正常回复。
但是下面的:

<li class="details">
<div class="inner"><p>LZ发给我。我帮你顶楼。嘻嘻</p> 
<p>159995960@qq.com</p></font></div>

类似这样的就提取不了邮箱了

用的正则表达式:(?<=<div class=””inner””>).*?(?=</font></div>)

引用 9 楼 wang466791739 的回复:

引用 8 楼 huangwenquan123 的回复:
引用 7 楼 wang466791739 的回复:
To-huangwenquan123
能帮我解答个问题吗?我等你很久了
什么问题?还是之前那个吗?我回复在你帖子里了!

是新的问题,我之前一直没发现。
描述如下:
猫扑论坛回复的个格式如下:

HTML code
<li class=”details”>
<di……

回复在你帖子里了!


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明XML直接读取字符串内容
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!