【问题标题】:Create HTML reports using C++使用 C++ 创建 HTML 报告
【发布时间】:2012-06-26 11:44:51
【问题描述】:

好吧,我已经完成了编码并且我的所有结果都准备好了,我现在需要做的就是创建 HTML 报告来显示这些结果。如何使用 C++ 创建 HTML 报告?任何想法? 如果有帮助,我将使用 Visual Studio 编译和运行我的代码,尽管我不太热衷于使用 VS 库,并且我更喜欢使用 C++ 标准库(如果有的话)。提前谢谢你

【问题讨论】:

  • 如果您解释一下您想要创建什么样的报告,这可能会有所帮助?程序的数据输入?程序本身?还有什么?另外,应该从网络服务器调用它,还是只生成纯 HTML?
  • @JoachimPileborg 我需要创建程序内部计算的数据的报告,不包括输入数据。什么都不是从 Web 服务器调用的,一切都是从程序本身调用的。
  • 你可以使用像 [amber][1] [1] 这样的 html 模板引擎:stackoverflow.com/a/30281734/2261889

标签: c++ html visual-studio-2010


【解决方案1】:

一种快速的方法是将 html 标签写成字符串。 这是一个例子

    ofstream myfile;
    myfile.open ("C:\\report.html");
    myfile << "<!DOCTYPE html><html><head></head><body>"; //starting html

    //add some html content
    //as an example: if you have array of objects featuring the properties name & value, you can print out a new line for each property pairs like this:
    for (int i=0; i< reportData.length(); i++)
        myfile << "<p><span style='font-weight: bold'>" << reportData[i].name << "</span><span>" << reportData[i].value << "</span></p>";

   //ending html
    myfile << "</body></html>";
    myfile.close();

编辑:更新代码

【讨论】:

  • 你能详细说明一下吗?它给出了一个错误,内容如下:'名称后跟 :: 必须是类或命名空间名称'
  • 啊,我忘记了 StreamWriter 和 System 命名空间不可用,除非您使用 .Net CLR。我已经更新了代码,以便它改用 ofstream 类。我编写的示例内容为 reportData 数组中的每个项目创建了一个段落。 (虽然不是我没有定义数组,所以这只是一个例子,代码还不能执行)
【解决方案2】:

嗯,HTML 是文本,所以从 writestd::ostream 的所有常规工具都完全能够为您生成输出。我建议您只生成描述数据结构层次结构的 XML,然后应用脚本、样式表或其他任何东西来根据您的喜好对其进行格式化。

【讨论】:

    【解决方案3】:

    您可能需要的是 C++ HTML 模板引擎。你可以找到一个列表here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-18
      • 2011-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多