【发布时间】:2010-10-12 01:54:46
【问题描述】:
如何在 Visual C++ 应用程序中读取 XML 文件?
我需要在 Visual Studio 2003 C++ COM ATL 应用程序中读取 XML 文件 - 非托管代码。我应该使用什么库:msxml、xmllite、其他?
我需要检查xml是否满足我定义的xsd然后阅读它。
欢迎提供示例代码 ;)
提前致谢。
【问题讨论】:
标签: xml visual-c++ com atl
如何在 Visual C++ 应用程序中读取 XML 文件?
我需要在 Visual Studio 2003 C++ COM ATL 应用程序中读取 XML 文件 - 非托管代码。我应该使用什么库:msxml、xmllite、其他?
我需要检查xml是否满足我定义的xsd然后阅读它。
欢迎提供示例代码 ;)
提前致谢。
【问题讨论】:
标签: xml visual-c++ com atl
有很多选择,我们使用 Xerces-C++ 库,它涵盖了所有选项,但不是最轻量级的选择,但提供了很大的灵活性。
对于初学者,您需要决定是需要 DOM 样式解析器还是 SAX 样式(事件驱动程序)解析器。
【讨论】:
我使用了tinyXML。它非常受限制(没有 DTD,没有 XSL),但是它将 XML 文件加载到 doms 中,非常小而且速度很快。如果您只是想读取一个 xml 文件以从中提取信息:这就是要走的路。
【讨论】:
我是CMarkup 的忠实粉丝。它有 MFC 和 STL 字符串版本,并且是用非托管 C++ 编写的;适合我的所有情况。
还有一个用于 MSXML 的包装类。有一个可供试验的可下载版本和几个在线示例/教程。
【讨论】: