首页 > 系统相关 >XmlReader & XElement 遍历大文件xml,不使用内存。测试可以读取6G的xml

XmlReader & XElement 遍历大文件xml,不使用内存。测试可以读取6G的xml

时间:2022-08-31 15:25:23浏览次数:83  
标签:xml el 6G XElement xEl reader var

[TestMethod]

       public void TestMethod1()

        {

           //try

           //{

           //string result = new BoDowJonesWatchlistAutoUpdate().StartCheck();

           var xmlFile = "C:\\D\\ ShareFolder\\PFA2_201703102200_D.xml";

 

           //var xeList = ReadPFA.ReadXElements(xmlFile, "SanctionsReferencesList");

 

            using (XmlReader reader = XmlReader.Create(xmlFile))

            {

               //var list = ReadPFA.Load(reader);

 

                reader.MoveToContent();

               while (!reader.EOF)

                {

                   while (reader.Read())

                    {

                       if (reader.NodeType == XmlNodeType.Element && reader.Name == "SanctionsReferencesList")

                        {

                           //string content = reader.ReadInnerXml();

 

                            //string formated = string.Format("<SanctionsReferencesList>{0}</SanctionsReferencesList>", content);

 

 

                           //XElement xEl = XElement.Parse(formated);

                           //XElement xEl = XElement.Load(reader);

                            XElement xEl = XElement.ReadFrom(reader) as XElement;

 

                           //IEnumerable<XElement> querys = from el in xEl.Elements("ReferenceName").Elements()

                           //                               select el;

 

                           var t1 = xEl.HasAttributes;

                           var t2 = xEl.HasElements;

                           var t3 = xEl.Elements();

 

                            IEnumerable<XElement> querys = from el in xEl.Elements()

                                                          select el;

 

                           var sanctionsReferencesList = GetSanctionsReferencesList(querys);

 

                            GetDistinctList(sanctionsReferencesList);

 

                        }

                    }

                }

            }

           //}

           //catch

           //{

           //    throw;

           //}

        }

 

标签:xml,el,6G,XElement,xEl,reader,var
From: https://www.cnblogs.com/hofmann/p/16643181.html

相关文章

  • XElement类来读取XML
    <Table><Product><Product_id>1</Product_id><Product_name>Product1</Product_name><Product_p......
  • 项目实用-logback.xml配置-sql和异常在不同的文件中
    <configuration><!--本文主要输出日志为控制台日志,系统日志,sql日志,异常日志--><!--%m输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,,,,--><!--控制台-......
  • XML文件sql转义字符
    使用CDATA区段所有XML文档中的文本均会被解析器解析。只有CDATA区段(CDATAsection)中的文本会被解析器忽略。大于等于<![CDATA[>=]]>小于等于<![CDATA[<=]]>......
  • 02.XML技术
    一、XML简介XML指可扩展标记语言(eXtensibleMarkupLanguage),是用来传输和存储数据的,是一种通用的数据交换格式,可以使数据在不同应用程序间交换,具有很强的可扩展性。 ......
  • c# XElement linq filter
    usingSystem.Xml;usingSystem.Xml.Linq;//调用staticprivatevoidInitIncrementalSanctionsReferencesList(thisXmlReaderreader,PFApfa)......
  • XMLHttpResquest Level2新功能
    旧版XMLHttpResquest的缺点:只支持文本数据的传输,无法用来读取和上传文件传送和接收数据时,没有进度信息,只能提示有没有完成 新版的优点:1.可以设置HTTP请求的时限2可......
  • 数据传输格式XML和JSON
    XML:可扩展标记语言格式臃肿,解析麻烦,需要用到第三库 JSON:JavaScript对象表示法都是字符串,解析简单 JSON可支持的数据类型只有六种数值、字符串、布尔值、null、对......
  • Python爬虫-Xpath语法与lxml库的用法(二)
    一、安装pip方式安装pipinstalllxml二、Xpath术语2.1节点在XPath中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML文档......
  • pom.xml
    <?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLoca......
  • C# 读取XML数据
    引用System.XmlusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Xml;namespac......