【发布时间】:2013-06-10 06:25:49
【问题描述】:
我有非常大的 XML 文件要处理。我想将它们转换为具有颜色、边框、图像、表格和字体的可读 PDF。我的机器中没有很多资源,因此,我需要我的应用程序是非常优化的寻址内存和处理器。
我做了一个简单的研究来确定要使用的技术,但我无法确定哪种编程语言和 API 最适合我的要求。我认为 DOM 不是一种选择,因为它会消耗大量内存,但是,带有 SAX 解析器的 Java 会满足我的要求吗?
有些人还推荐使用 Python 进行 XML 解析。有那么好吗?
非常感谢您的善意建议。
【问题讨论】:
-
Python 有一个非常简单而强大的库,称为 BeautifulSoup,它非常适合 XML 解析。
-
非常感谢 karthikr。 Beautifulsoup 对记忆力温和、速度快吗?
-
请量化“非常大”。工程师会寻求帮助在“非常宽”的河流上建造一座桥吗?有人敢在不知道这条河实际上有多宽的情况下提出建议吗?我听说人们将 1Mb 称为非常大。 1Mb 的解决方案与 1Gb 完全不同。一般来说,如果现在供人类使用的文档太大而无法存储在内存中,我会感到惊讶 - 除非有很多图像。
-
谢谢你迈克尔! .. 我想处理大约 200K 个 XML,每个文件大约 2 MB。稍后我会考虑您的建议。
-
你看过vtd-xml (vtd-xml.sf.net)
标签: java python xml parsing sax