带有 HTML 报告生成器的 c++ XML 解析器的体系结构
Architecture for a c++ XML-parser with a HTML-reportgenerator
我想要一个解析XML文件的程序,用我需要的标签构建一个结构,最后使用HTML模板打印一个HTML报告,关键词被XML文件中的数据替换。由于我(还没有)真正进入OO编程,我希望获得一些有关如何构建此类程序的提示和建议。我想两节课应该足够了。分析器类和数据类。第一个遍历XML文件并将我要存储的每个标签报告给一个数据对象,该对象按分层顺序存储所有标签。之后,我想调用一个打印函数,它将所有内容打印为 HTML 报告。
- 我不确定如何将标签报告给数据对象
- 我可以将标签存储在一个存储结构树的对象中,还是将每个标签存储在单独的对象中会更好?
任何帮助将不胜感激!
你在问题中没有提到Qt,但当你把它作为一个标签添加时:有QtXML,它将提供一种解析和生成XML文档的方法,并且也适用于HTML输出。XML 通常通过 DOM 或 SAX 处理。使用 DOM,文档被解析为树结构,您将在树上作为中心数据元素工作。使用 SAX,可以在分析 XML 输入时使用为不同 XML 元素调用的回调函数。
互联网上有很多关于DOM和SAX的信息,维基百科是一个很好的起点。网上也有很多关于QtXML的文档。
使用 DOM 和/或 SAX 将为解决问题提供一个很好的架构。
我解决了我的问题,想分享我的架构。我做了一个类解析器来解析元素并将标签报告给一个 HTMLHandler 类,该类具有标头、内容和子内容等子类。其中存储数据,并且都有 write()- 方法来打印自己。
对我来说效果很好,并且退出了简单的:)
相关文章:
- vscode g++链路故障:体系结构x86_64的未定义符号
- 体系结构x86_64的未定义符号:std:terminate(),typeinfo,运算符delete[],运算符new
- OSX clang++:用于 cpp 文件中显式实例化模板的体系结构x86_64的未定义符号
- PCL 出错:体系结构x86_64 @pcl的未定义符号
- clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用) - 体系结构的未定义符号 x86_64:
- 体系结构x86_64的未定义符号:链接器错误
- C++ std::vector<int> 体系结构的未定义符号 x86_64:
- 未使用的 asm() 在不受支持的体系结构上的行为
- 用于本地网络运行的客户端服务器体系结构
- 生成文件:体系结构x86_64的未定义符号
- Xcode"体系结构x86_64的未定义符号"
- 有了memory_order_relaxed,原子变量的总修改顺序如何在典型体系结构上得到保证
- 体系结构x86_64的未定义符号:找不到原因
- 在OSx:ld上使用CMake构建C++项目:找不到体系结构x86_64的符号
- 体系结构x86_64的未定义符号:c++/ h 文件和 cpp 文件
- 以编程方式在运行时检测 CPU 体系结构
- C++ XCODE ld:找不到体系结构x86_64 clang 的符号:错误:链接器命令失败,退出代码为 1(使用 -
- 了解类型特征的体系结构
- Apple Mach-O-Linker 错误:在体系结构 x86-64 中找不到从(行)引用的变量
- 带有 HTML 报告生成器的 c++ XML 解析器的体系结构