草庐IT

memory-management

全部标签

xml - PowerShell 在读取大型 (50 MB) XML 文档时抛出 System.OutOfMemoryException

我们正在运行以下脚本:[xml]$products=获取内容C:\fso\products.xml并收到以下错误:System.OutOfMemoryException我们假设这是因为XML文件很大。解决方案可能涉及一次读取XML一行。我们如何处理这个文件?例如,我们如何计算元素的数量?或者,我们如何将元素名称打印到控制台窗口?我们目前正在查看此链接:http://blogs.technet.com/b/stephap/archive/2009/05/27/choking-on-very-large-xml-files.aspxXML结构如下:0000000000001BASICS$1

xml - 如何从 SQL Management Studio 获取 ntext 列的完整数据?

我正在使用SQLserver2005。在其中一个表中,我有一个ntext类型的列“xmldefinition”。现在该列中的数据非常庞大,并且包含整个xml文本。例如:-....我想从managementstudio获取整个字符串并将其复制到xml文件中,只是为了手动检查整个xml。但是当我查询该列并将数据复制并粘贴到另一个文件时,内容在中间被破坏并且不完整。例如:-........我相信这只会从列中的xml数据中复制一些8196个字符。所以我的问题是,如何手动获取此列的完整数据。不过,我可以编写C#代码来阅读该专栏,但我想在ManagementStudio中手动执行此操作。请有任何想

xml - 为什么我在使用 Perl 的 XML::Simple 时会收到 "Out of memory"错误?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。为了帮助澄清这个问题以便它可以重新打开,visitthehelpcenter。关闭12年前。已编辑:大家好,我有一个这样的XML文件,2107410109014290112345671000028020000f0我正在使用这样的Perl代码来访问xml文件中的数据(我应该坚持这种访问格式)#!/usr/bin/perlusestrict;useXML::Simple;my$xml=newXML::Simple;my$data=$xml->XMLin("uL-DCCH-Messa

c - R XML - 无法从内存中删除内部 C 节点

我必须解析大约2000个xml文档,从每个文档中提取某些节点,将它们添加到单个文档中,然后保存。我正在使用内部C节点,以便我可以使用XPath。问题是,当我遍历文档时,我无法从内存中删除内部C对象,最终使用了>4GB的内存。我知道问题不在于加载的树(我只是通过加载和删除每个文档的哈希树来运行循环),而在于过滤的节点或根节点。这是我使用的代码。我缺少什么以便在每次迭代结束时清除内存?xmlDoc谢谢你的帮助 最佳答案 所以我发现没有办法使用“XML”来做到这一点而不会出现内存泄漏和大量处理时间。幸运的是,“xml2”现在可以处理创建文

c# - 如何有效地使用内存附加到 C# 中的大型 XML 文件

有什么方法可以合并两个XmlDocument而无需在内存中保留第一个?我必须循环遍历多达一百个大型(~300MB)XML文件的列表,每个文件最多附加1000个节点,重复整个过程几次(因为新节点列表被清除以节省内存)。目前我加载了整个XmlDocument在添加新节点之前先写入内存,目前这是不可行的。您认为解决此问题的最佳方法是什么?我有一些想法,但我不确定哪个是最好的:永远不要加载整个XMLDocument,而不是使用XmlReader和XmlWriter同时写入随后重命名的临时文件。制作XmlDocument仅适用于新节点,然后手动将其写入现有文件(即file.WriteLine("

xml - 提取 xml 的节点值时出错。错误 : Namespace Manager or XsltContext needed

我正在尝试提取xml中节点的值。由于其namespace,我面临一些问题。在下面的xml中,我想要“faultstring”标记的值。ErrorInvalidcombinationofUsernameandPassword.我正在使用以下代码来获取值。但它会引发错误。DimxmlDocAsNewXmlDocumentDimnamespacesAsXmlNamespaceManager=NewXmlNamespaceManager(xmlDoc.NameTable)namespaces.AddNamespace("ns","SOAP-ENV")xmlDoc.Load("SOAP.xml"

sql - 如何在 SQL Server Management Studio 中将结果保存为 xml?

我正在尝试TDD并创建假对象,我想使用来自测试数据库的XML。因此,我想创建一个查询结果的XML,我在SQLServerManagementStudio中运行它。但我无法找到如何在SQLServerManagementStudio中以XML格式获取结果。这可能吗?以及如何? 最佳答案 您可以使用“FORXML”将查询结果输出为XML。例如:SELECTo.Order_NumberAS'OrderNumber',--Elemento.Order_TotalAS'@OrderTotal'--AttributeFROMdbo.ORDERo

C# : the close method of Xml. 加载(文件)

我编写了一些代码,使用XmlDocument对象加载XML文档,以便对其节点进行计数。方法如下:XmlDocumentxml=newXmlDocument();xml.Load(textBox1.Text);XmlNodeListnodes=xml.SelectNodes("//File");foreach(XmlNodenodeinnodes){number_of_childs++;}我面临的问题是,当导入一个大文件时,它需要大约700MB的RAM。如果我随后尝试对文件执行一些操作,或者甚至从文件中读取以在ListView中显示其数据,应用程序将占用大约2GB的RAM。所以,我想知道

c# - SQL Server 2008 错误 - XML 分析 : document parsing required too much memory

在XML解析器崩溃之前,我们在SQLServer2008中遇到了单个XML节点可以拥有的最大属性数的问题。我们收到的错误是:Msg6303,Level16,State1,Line1XMLparsing:Documentparsingrequiredtoomuchmemory这有点误导。将字符串转换为XML数据类型(或表列)时出现问题。SELECTCONVERT(XML,'')其中XXXXX其实是另外8191个属性。我们的数据集总共包含10,066个属性。当我们将属性数量减少到8,192时,效果很好。然而,8,193个属性崩溃。它似乎与数据大小没有任何具体关系(100MB或60KB无关紧

xml - 使用 perl 解析大型 (100 Mb) XML 文件时出现 "Out of memory"

我在解析大型(100Mb)XML文件时遇到错误“内存不足”usestrict;usewarnings;useXML::Twig;my$twig=XML::Twig->new();my$data=XML::Twig->new->parsefile("divisionhouserooms-v3.xml")->simplify(keyattr=>[]);my@good_division_numbers=qw(3031323538);foreachmy$property(@{$data->{DivisionHouseRoom}}){my$house_code=$property->{House