草庐IT

libxml_disable_entity_loader

全部标签

xml - 无法使用 XML 架构和 Perl (XML::LibXML) 验证 XML

xml:mariode2f15d014d40b93578d255e6221fd60MarioF23mariamariaMariaaaF443mircomircoMircoF27martinamartinaMartinaM26marcomarcoMarcoM25giovannazxVcGz0BPdHkYGiovannaF24lucanervizxePlNSDQjsxgLucaNerviM23XML模式:当我使用XML::LibXML::Schema验证xml时,我得到:../xml/workers.xml:0:Schemasvalidityerror:Element'impiegato'

使用 libxml2 的 xmlSaveFormatFileEnc 中的 valgrind 导致 XML 内存泄漏

我已经编写了一个模块来将一些实时数据转储到XML文件中有规律的间隔。我最终使用xmlSaveFormatFileEnc()来保存文件。但是我通过Valgrind和API收到内存泄漏报告xmlSaveFormatFileEnc().泄漏摘要如下,==8355==261,507,768bytesin506,798blocksaredefinitelylostinlossrecord109of109==8355==at0x402BE68:malloc(in/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)==8355==by0x40E43FB

xml - 使用 perl 和 LibXML 从 XML 中提取节点并解析结果

这个问题在这里已经有了答案:Needtopull2nodesandcombinetheinformationinLibXML(1个回答)关闭9年前。我有一个问题,我肯定需要一些帮助。首先,要温柔。我是perl和LibXML的新手。我一直在解析文档并将元素放入一个数组中,然后将该数组写入电子表格列。在测试过程中发现一些节点有多个同名的子节点。我需要将来自每个子节点的文本组合到数组的一个元素中。xml的(非常简化的)格式是:"SometextIwanttopull"但偶尔是这样的:"SometextIwanttopull""SomemoretextIwanttopullandjointot

xml - 警告 : Can not parse XML library list; XML support was disabled at compile time error

我在Windows64位系统上使用GDB调试器,我想看看寄存器中存储的值是什么,但是在我附加到进程后,我不断收到“警告:无法解析XML库列表;XML支持是在编译时禁用”错误。我已经尝试安装ExpatXML解析器并尝试运行该命令,但由于某些随机原因,即使我已经为它设置了PATH,它也无法识别它。有人可以告诉我应该如何使用XML解析器以及应该在哪里提取它的文件吗?登 最佳答案 您正在运行的GDB是在没有XML支持的情况下构建的,因此您无法修复此可执行文件。您可以找到另一个GDB版本或自己从源代码构建它(并确保您在构建机器上安装了libe

c++ - 在 C++ 中通过 libxml2 解析部分 XML 时过滤掉 namespace 错误

我需要解析部分XML片段(显示为std::string),比如这个:val作为xmlDoclibxml2中的对象,并且因为这些是片段,所以我不断收到namespaceerror:NamespaceprefixFOOonnodeisnotdefined错误吐出到STDERR中。我正在寻找的是一种方法来过滤掉这些namespace警告或将XML片段直接解析为xmlNode对象。我认为对initGenericErrorDefaultFunc()进行某种修改可能是为了采用第一种方法,但libxml2的文档绝对是糟糕透顶。坦率地说,我更愿意使用第二种方法,因为它不需要错误破解,而且节点已经知道命

c# - Entity Framework 5 不使用 xml 字符串更新行

我正在尝试使用EntityFramework5将包含utf-8编码的xml的字符串(大小为68kb)保存到SQLServer2012中。我使用的是代码优先方法。但是,对于我的一些xml字符串(但不是全部),它保存了一个空字符串,根本没有保存任何xml。使用断点确认在调用SaveChanges()之前分配数据。这是我用来更新数据库中特定行的方法:publicvoidLogResponseMessage(MessageBasemsg,DebugLogdebugLog){//SerializethemessageusingahelperclassstringXMLMsg=Serializat

xml - 使用 libXML/XPath 提取和存储 XML 数据

useXML::LibXML;useData::Dumper;#parsingfilemy$dom=XML::LibXML->new->parse_file('sample.xml');my$context=XML::LibXML::XPathContext->new($dom->documentElement());$context->registerNs('u','http://uniprot.org/uniprot');#printfiletomakesureitlooksokprint$dom,"\n";#findsshortnamesmy$sn=$context->findn

ruby 2 : Recognizing decomposed utf8 in XML entities (NFD)

问题问题很简单:我有包含这个值的XML穆勒这似乎是用变音符号表示u的有效XML格式,就像这样。穆勒但是到目前为止,我们尝试过的所有解析器都会生成u¨——两个不同的字符。背景这种形式的unicode(UTF-8)使用两个代码点来表示单个字符;称为NormalizedFormDecomposed或NFD,二进制形式为\303\274。大多数字符也可以表示为单个代码点和实体,包括这种情况。XML还可以包含ü或ü或ü并且在二进制中是\195\188。这称为归一化形式组合。这些中的任何一个都可以正常工作。正确回答问题所以我认为问题是:是否有一个解析器(似乎不是nokogiri)可以检测并规范化为

c++ - 如何使用 libxml2 验证带有 1.1 版模式的 xml?

我使用libxml2来验证具有模式的xml,并且由于一些我必须使用模式版本1.1的原因,所以我开始了我的模式标题像这样:然后我写了一个像这样的compleType:1.1版本有效,1.0版本无效。当我使用我的程序解析这个模式时:xmlSchemaParseCtxtPtrctxt;xmlLineNumberDefault(1);ctxt=xmlSchemaNewParserCtxt("schema.xsd");_xmlSchema*_schema=xmlSchemaParse(ctxt);我在_schema中得到了一个空指针。但是,如果我删除了上面的complexType,一切都很好。所

xml - 将代码从使用 XML::XPath 更改为 XML::LibXML

我有一个运行良好的perl脚本。脚本将xml文件作为输入并返回相同的JSON格式以及XML文件中特定元素的值。#!/usr/bin/perlusestrict;usewarnings;useJSON;useXML::Simple;useXML::XPath;my$xmlFileName="jsonconversion.xml";my$fileNameElement="//FileName";#CreatetheobjectofXMLSimple$xmlSimple=newXML::Simple(KeepRoot=>1);#Loadthexmlfileinobject$dataXML=$