草庐IT

内存取证

全部标签

c# - 使用 C# XmlSerializer 为大型对象集写入 block 以避免内存不足

我喜欢XmlSerialize的工作方式,它简单优雅且具有属性=p但是,在序列化为xml文件之前构建所有对象的集合时,我遇到了内存不足问题。我正在从SQL数据库填充一个对象,并打算使用XmlSerialize将该对象写出到XML。它适用于小子集,但如果我尝试从数据库中获取所有对象,我会遇到内存不足异常。XmlSerialize是否有某种能力允许我从数据库中获取一批100个对象,然后写入它们,获取下一批100个对象并附加到xml?我希望我不必闯入XmlDocument或需要更多手动编码工作的东西... 最佳答案 XmlSerializ

xml - 将 XML 转换为 CSV 时出现内存不足错误

我想使用Anydata-0.12将XML文件转换为CSV。XML文件如下所示:........CSV文件包含部分XML。它应该具有XML文件中使用的列标题,如下所示:RptID,BizDt,StrkMult,Sym,StrkValu,Mult,MatDt,CFI,StrkCcy,MMY,StrkPx23520135,2016-12-09,1,OEF,100,100,2017-12-15,OCASPS,USD,20171215,10030818621,2016-12-09,1,OEF,100,100,2018-06-15,OCASPS,USD,20180615,10031165289,2

iphone - xml 解析器中奇怪的 iPhone 内存泄漏

更新:我编辑了代码,但问题仍然存在...大家好,这是我在这里的第一篇文章-我发现这个地方是解决我许多问题的重要资源。通常我会尽力自己解决任何问题,但这次我真的不知道出了什么问题,所以我希望有人能帮助我。我正在构建一个使用TouchXML解析几个xml文件的iPhone应用程序。我有一个XMLParser类,它负责下载和解析结果。当我使用相同的XMLParser实例多次解析xml文件时,出现内存泄漏。这是解析片段之一(只是相关部分):for(intcounter=0;counter1){NSString*trimmedString=[[grandchildstringValue]stri

c# - 数据集中的大型 XML 文件(内存不足)

我目前正在尝试将一个稍大的xml文件加载到数据集中。xml文件大约有700MB,每次我尝试读取xml时都需要大量时间,一段时间后它会抛出“内存不足”异常。DataSetds=newDataSet();ds.ReadXml(pathtofile);主要问题是,我有必要使用这些数据集(我用它来将数据从xml文件导入到sybase数据库(foreach表、foreach行、foreach列))并且我没有方案文件。我已经用谷歌搜索了一段时间,但我只找到了对我来说不可用的解决方案。附加信息:我使用Sybase(ASA9)数据库,但我的C#应用程序在处理数据库之前崩溃了。在我将XML读入数据集并希

python - xml.etree.ElementTree iterparse() 仍在使用大量内存?

我一直在尝试使用iterparse来减少需要处理大型XML文档的脚本的内存占用。这是一个例子。我编写了这个简单的脚本来读取一个TMX文件并将其拆分为一个或多个输出文件,使其不超过用户指定的大小。尽管使用了iterparse,但当我将一个886MB的文件拆分为100MB的文件时,脚本会耗尽所有可用内存(使用我的8MB中的6.5个时,它会爬行)。我做错了什么吗?为什么内存使用率这么高?#!/usr/bin/python#-*-coding:utf-8-*-importargparseimportcodecsfromxml.etree.ElementTreeimportiterparse,t

asp.net-mvc - 如何将内存中的 xml 文档作为附件流式传输到 asp.net mvc 站点

我认为MVC应该让这一切变得更容易,但我正在尝试各种方法并遇到问题。如果我尝试接受这个问题的答案(相应地更改内容类型)...HowtocreatefileandreturnitviaFileResultinASP.NETMVC?...我遇到了麻烦,因为我在xml文件中的编码是UTF-16。我得到的错误是:不支持从当前编码切换到指定编码。这表明我需要在某处告诉MVC我想要UTF-16。或者,我想要一种使用二进制而不是文本的不同方法。 最佳答案 这就是我要解决的问题:publicFileStreamResultDownloadXML()

c - xmlCopyNode (libxml2) 内存泄漏?

我在C/Linux上使用libxml2从xml文件中提取信息。我创建了一个函数来查找某个标记的第一次出现并返回该标记的副本。例如给定以下xml文本:FirstoccurrenceoftagbChildnodeSecondoccurrenceoftagb我想提取第一个标签,如果存在,则包含所有子标签。这是我使用的代码的简化版本:#include#include#include#include#include#ifdefLIBXML_TREE_ENABLEDstaticintxml_extract_first_occurrence_by_name(xmlNode*start_node,xm

c# - "Root element not found"- 读取内存流时

我有一个存储在列表中的类。我连载它...XmlDocumentxd=newXmlDocument();MemoryStreamms=newMemoryStream();XmlSerializerxm=newXmlSerializer(typeof(List));xm.Serialize(ms,_bugs);StreamReadersr=newStreamReader(ms);stringstr=sr.ReadToEnd();xd.Load(ms);我查看了str并发现它是空的,但是该集合有一个对象。对于为什么会发生这种情况有什么想法吗? 最佳答案

c# - 在不加载到内存的情况下处理 xml

如果我不能将整个文件加载到内存中,那么处理XML的最佳方法是什么? 最佳答案 使用XmlReader并逐个元素地处理。 关于c#-在不加载到内存的情况下处理xml,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5547119/

java - 在 30GB XML 数据集上搜索正则表达式模式。使用16GB内存

我目前有一个JavaSAX解析器,它正在从一个30GB的XML文件中提取一些信息。目前是:读取每个XML节点将其存储到一个字符串对象中,在字符串上运行一些正则表达式将结果存入数据库对于数百万个元素。我在具有16GB内存的计算机上运行它,但内存没有得到充分利用。有没有一种简单的方法可以从输入文件中动态“缓冲”大约10gb的数据?我怀疑我可以手动采用“生产者”“消费者”多线程版本(在一侧加载对象,使用它们并在另一侧丢弃),但是该死的,XML现在很古老,没有有效的库吗紧缩他们? 最佳答案 简单说一下,Java可以使用您的16GB内存吗?您