zoukankan      html  css  js  c++  java
  • Linq to xml:流式处理 XmlReader

    IEnumerable<string> grandChildData =
                    from el in StreamRootChildDoc(new StringReader(markup))
                    where (int)el.Attribute("Key") > 1
                    select (string)el.Element("GrandChild");

                foreach (string str in grandChildData)
                {
                    Console.WriteLine(str);
                }

    处理函数

     static IEnumerable<XElement> StreamRootChildDoc(StringReader stringReader)
            {
                using (XmlReader reader = XmlReader.Create(stringReader))
                {
                    reader.MoveToContent();
                    // Parse the file and display each of the nodes.
                    while (reader.Read())
                    {
                        switch (reader.NodeType)
                        {
                            case XmlNodeType.Element:
                                if (reader.Name == "Child")
                                {
                                    XElement el = XElement.ReadFrom(reader) as XElement;
                                    if (el != null)
                                        yield return el;
                                }
                                break;
                        }
                    }
                }
            }

    关于作者: 王昕(QQ:475660) 在广州工作生活30余年。十多年开发经验,在Java、即时通讯、NoSQL、BPM、大数据等领域较有经验。
    目前维护的开源产品:https://gitee.com/475660
  • 相关阅读:
    2018级 面向对象程序设计 助教总结
    十二,时间序列趋势相似性度量方法的研究-DPM
    第十八周博客作业
    LSTM与BiLSTM
    基于自训练的半监督文本分类算法
    随机游走模型
    PMI点互信息
    Transductive Learning(直推式学习)
    TextCNN实验
    TextCNN
  • 原文地址:https://www.cnblogs.com/starcrm/p/1362827.html
Copyright © 2011-2022 走看看