问题标签 [xml-parsing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1173 浏览

.net - 将格式不太好的 XML 加载到 XDocument(多个 DTD)中

我在处理几乎格式良好的 XHTML 文档的数据时遇到了问题,除了它在开头有多个 DTD 声明:

我需要仅使用第一个DTD 将这些数据加载到 XDocument 对象中并忽略其余声明。不可能完全忽略 DTD 处理,因为文档可能包含不寻常的字符,例如âor€等​​。

文本是从外部来源检索的,我不知道为什么会这样。

显然,我加载此文档的天真尝试失败了System.Xml.XmlException : Cannot have multiple DTDs

处理此类数据的最佳方法是什么?

PS:我忘了提,数据来自一个Stream可能会或可能不会使字符串操作更复杂的数据

0 投票
1 回答
11016 浏览

xml - 如何使用 XmlPeek 任务?

我在http://msdn.microsoft.com/en-us/library/ff598684(v=VS.100).aspx上阅读了有关 XmlPeek 任务的 MSDN MSBuild 任务参考, 但我无法在我的 MSBuild 脚本中使用它。如果你以前用过这个,请告诉我怎么用!

0 投票
1 回答
2232 浏览

xml-parsing - 使用 UTF-8 编码解析 XML 文件时出现无效令牌错误

使用 UTF-8 编码解析 XML 文件时出现无效令牌错误。

遇到扩展 ASCII 字符 'â' { "â", "â" } 时会出现此错误。

当我将编码从 UTF-8 更改为 ISO-8859-1 时,解析成功。但我的应用程序应该支持 UTF-8、ASCII 和扩展的 ASCII 字符。我该怎么办?

欢迎任何想法。

提前感谢您的时间和解决方案。

0 投票
2 回答
3351 浏览

php - PHP 5.* 中的方法拦截

我正在为 PHP 实现一个日志系统,但我有点卡住了。

所有配置都在一个 XML 文件中定义,该文件声明了要记录的每个方法。XML 被很好地解析并转换为多维数组 ( classname => array of methods)。到目前为止,一切都很好。

我们举一个简单的例子:

现在,假设我有这个配置文件:

希望在运行时(一旦 XML 解析器完成了他的工作)是:

一旦 XML 解析器完成了它的工作,这里最大的挑战就是将 A 和 B 转换成它们的“动态”版本。

理想的情况是完全不修改 A 和 B 的代码(我的意思是,在文件中)来实现这一点 - 或者至少在程序完成后找到一种方法来恢复其原始版本。

明确地说,我想找到最合适的方法来拦截 PHP 中的方法调用。

你对它有什么想法?

PS:当然,客户端代码上不应该有任何后果(无论是否启用拦截,都没有区别)。

0 投票
1 回答
443 浏览

c# - 如果标签不存在,是否有一个 GetElementByTagName 来处理

我在下面有以下代码,但有时“serving_description”标签不存在。现在我只是尝试了它,但我想知道是否有更清洁的方法来处理这种情况。

0 投票
1 回答
185 浏览

xml - 是否可以在 XML 文件中包含 DOCTYPE 声明并让解析器在工作时将其删除?

或者也许让解析器以某种方式忽略 DOCTYPE 标记?我有 XML 文件被用作“!ENTITY”,它们本身也需要有“!ENTITY”,并且我已经在顶级文件中包含了嵌套的文件,但是 Visual Studio 调用了我对第二个文件的引用-未定义的级别文件。谢谢!

0 投票
2 回答
18886 浏览

.net-2.0 - 解析包含“”的 XML 字符串(必须保留)

我有传递string包含 XML 的代码。此 XML 可能包含一个或多个 (空格字符的实体引用)的实例。我要求不应解析这些引用(即不应将它们替换为实际的空格字符)。

我有什么办法可以做到这一点?

基本上,给定一个包含 XML 的字符串:

希望它被转换为:

(我实际上想要实现的是简单地获取一个 XML 字符串并将其写入一个“漂亮打印”的文件。这具有将 字符串中的出现解析为单个空格字符的副作用,这需要保留。此要求的原因是编写的 XML 文档必须符合外部定义的规范。)

我已经尝试创建一个子类XmlTextReader来从 XML 字符串中读取并覆盖该ResolveEntity()方法,但这没有被调用。我也尝试过分配一个自定义XmlResolver.

正如建议的那样,我也尝试过“双重编码”。不幸的是,这并没有达到预期的效果,因为&解析器没有解码。这是我使用的代码:

编写的 XML 最终得到:

0 投票
2 回答
1719 浏览

ruby-on-rails - Nokogiri 拉解析器(Nokogiri::XML::Reader)问题与自闭标签

我有一个包含产品的巨大 XML(>400MB)。因此,使用 DOM 解析器被排除在外,所以我尝试使用拉解析器来解析和处理它。each_product(&block)下面是我迭代产品列表的方法的一个片段。

基本上,使用堆栈,我将每个<product> ... </product>节点转换为哈希并处理它。

问题出在自闭标签(EG <country/>)上,因为我无法区分“正常”和“自闭”标签。它们都是类型Nokogiri::XML::Node::ELEMENT_NODE,我无法在文档中找到任何其他鉴别器。

关于如何解决这个问题的任何想法?

0 投票
1 回答
514 浏览

objective-c - 如何检查数组的内容?使用 ObjectiveC 解析 XML 文件

我有 3 节课->

然后在我的应用程序委托中定义-> NSMutableArray 类别;

我用这段代码解析一个 XML 文件。我尝试了数组层次结构,我认为我没有在数组上添加任何对象。我怎样才能检查它?怎么了?

//xmlparser.h

//视频.h

//主题.h

//类别.h

//AppDelegate

这是一个 XML 文件的简短示例:

0 投票
3 回答
850 浏览

xml - XHTML 中的特殊字符 - 解析错误

当 xhtml 中有 & 等特殊字符时,DOM/SAX 解析器会抛出解析异常。xhtml 文档作为我的组件的输入。我想在解析时忽略这些特殊字符。我如何使用 DOM/SAX JAVA 解析器来实现它。