问题标签 [xom]
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.
java - 在android上解析xml文件时文件过早结束
我正在尝试从使用XOM作为 XML 库的 android 应用程序中读取 xml 文件。我正在尝试这个:
但是我nu.xom.ParsingException: Premature end of file.
什至在文件为空的情况下。
我需要解析一个非常简单的XML
文件,并且我已经准备好使用另一个库而不是 XOM,所以如果有更好的库,请告诉我。或者只是使用 XOM 解决问题。
如果有帮助,我正在使用xerces来获取解析器。
- - - 编辑 - - -
PS:这样做的目的不是解析空文件,该文件恰好在第一次运行时为空,显示此错误。
java - 使用 XOM 生成带有名称空间的部分 XML
虽然描述看起来很长,但实际上很简单。
我需要的
我有以下 xml 文档
请注意,xml 基本上包含三个命名空间
- 原子:http ://www.w3.org/2005/Atom
- dcterms: http: //purl.org/dc/terms/
- 开放搜索: http : //a9.com/-/spec/opensearch/1.1/
现在我需要生成另一个单个atom:entry节点的 xml 文档。像下面
我得到了什么
我正在使用XOM,到目前为止我尝试过
而且我只使用一个命名空间声明来关注 xml。如下所示。
问题
它只包含Atom命名空间 :( 因此它不是一个有效的 XML。因为它有一个子节点dcterms:identifier,其命名空间丢失。
我非常需要帮助才能摆脱这个问题。期待任何帮助。
java - 使用 XOM 在具有默认命名空间的 xml 上应用 xpath
我有以下包含默认命名空间的 XML
我运行下面的代码,期待一些结果
但大小始终为 0。
我经过
- https://stackoverflow.com/a/9674145/1160106 [我真的没有得到奇怪的 xpath 语法]
- http://www.edankert.com/defaultnamespaces.html#Jaxen_and_XOM [可以看到一些希望。只需要对我当前的实现进行重大更改]
期待任何帮助。
java - 在 XML 上应用 xpath,其中命名空间带有 XOM 的子级
我正在使用 XOM 库来解析 xml。我有以下 XML
我想应用一个像ns4:parent/ns4:child1/ns1:child2
. 所以我的代码如下
我要XPathException
到这里了。
我可以理解,由于我仅通过根元素创建命名空间上下文,因此它没有获取其子元素的命名空间。因此,一种解决方法可能是遍历所有孩子并收集他们的命名空间并将其添加到XpathContext
对象中。但我的 xml 可以是 10 到 20k 行。所以我担心遍历方法的效率会有多高。
期待任何更好的建议
java - 无论如何要让 XOM 允许非绝对命名空间?
我有一些来自 Microsoft sharepoint 站点的 XML。开场白是:
当我尝试使用 XOM 打开这个 .xml 文件来提取我想要的信息时,它会抱怨:
我假设这是指#RowsetSchema 命名空间绑定,这似乎会导致问题。我试过添加
到我传递给 XOM Builder 的 XMLReader,但它没有帮助。
有没有办法让 XOM 只加载 XML 并让我提取我想要的数据,还是我必须编写自己的 XML 解析器?
谢谢 :)
java - equals() 用于 XOM 元素的子类
我已经创建了 XOM 的子类,Element
并希望将它们与容器一起使用,例如Set
或HashMap
. 然而,这些都需要一种equals(Object obj)
方法。我已经实现了一个相等的算法,但不能像XOM.Node()
声明equals(Object obj)
的那样使用它final
。有什么办法可以轻松克服吗?[如果这是唯一的方法,我可以创建一个包装器/委托]。
java - Java XML 从上到下读取 XML 文件
我想使用 Java 从上到下读取 XML。但是,我不想使用递归函数,因为我希望能够跳转到不同的元素并从该位置开始读取。
我尝试过使用getParent()
andindexOf()
方法(下面所有三个库都有这些方法)来做到这一点,但它变得非常混乱,主要是因为这些方法不区分属性和元素。
我确信一定有一个简单的方法可以做到这一点,但是在尝试了dom4j
、、jdom
和之后xom
,我仍然没有找到解决方案。
[编辑] 更多信息:
我的朋友想以问答类型的方式制作基于控制台文本的游戏。我决定尝试让它读取 XML 文件,而不是将其硬编码到 java 中,因为 XML 具有一种方便的树状样式。下面是我的 XML 文件的示例:
我不知道像伪编程语言那样使用 XML 是否禁忌。如果有人有其他建议,请随时给他们。
java - 获取所有不考虑命名空间 URI 的子元素
有时我有一个 XML:
有时没有命名空间 URI,即
如何获取resource
任何命名空间 URI 的所有子元素?
我用来处理元素并以这种方式nu.xom.Element
构建:nu.xom.Document
xml - 编写 XML 的 XOM 或 DOM 方法?
根据内存和使用上下文,使用哪种方法会更好。DOM 还是 XOM?用于简单编写 XML。
再会
xml - XML 解析性能 DOM 与 XOM
我使用不同的解析器 Parser X (XOM) 和 Parser Y (DOM) 在 Java 中编写了相同的 XML 解析算法。我将代码嵌入到 200 万次循环中,以模拟我需要执行的操作数量,并使用 Java 分析器来监控性能。测量如下所示。
我有几个问题。
如果我想处理大约 200 万个大小达到 100 MB 的 XML,该怎么办?哪个更好以获得更好的性能。性能是根据时间来衡量的(无论机器利用率如何,都能更快地完成所有 XML 的处理,因为我有专门的机器来处理这个过程)。简而言之,在内存 VS CPU 时间 VS 正常运行时间方面哪个更好
利用完整的 CPU 能力更快地完成是否可行?多线程?
如果我想衡量性能。我应该使用 CPU 时间还是正常运行时间。我知道CPU时间是CPU专用于完成该过程的时间,而正常运行时间是机器完成该过程所花费的总时间?
为什么 Parser Y 与 Parser X 占用相同的运行时间,但 CPU 时间却低得多,尽管该测量是平均值而不是一次运行的结果。
是否可以让 Parser Y 的正常运行时间更短,以便 CPU 时间性能的差异反映在现实生活中。