【问题标题】:Print output in a single line in tinyxml在 tinyxml 中单行打印输出
【发布时间】:2013-05-27 06:12:10
【问题描述】:

我正在使用 TinyXML 来保存和打印 XML 文档。

在打印我得到的文档时:

<document>
   <data>1</data>
   <data>2</data>
   <data>3</data>
</document>

结果。

但我希望将结果打印在这样的一行中:

<document><data>1</data><data>2</data><data>3</data></document>

我该怎么做?

【问题讨论】:

    标签: xml visual-c++ xml-parsing tinyxml tinyxml++


    【解决方案1】:

    根据documentation(复制如下),我假设您使用的是Print 或Save,因此您会得到“漂亮的打印”输出

    但正如您从上面的替代方案和 this documentation 中看到的那样,您可以改用 &lt;&lt; 运算符直接输出到文档所述的 ostream

    请注意,此输出不带任何换行符或格式,而 Print() 则包含制表符和换行符。

    所以要保存到文件中,像这样

         TiXmlPrinter printer;
         printer.SetStreamPrinting();
         base.Accept( &printer );
         out << printer.Str();
         return out;
    

    【讨论】:

    • 您发布的第二个链接非常有用!我更新了您的答案以包含其中的代码。谢谢。
    • @Derek - 谢谢,我看到并批准了你的编辑:-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-30
    • 1970-01-01
    • 2022-07-03
    • 2020-02-27
    • 2022-01-07
    • 2013-10-01
    • 2011-10-22
    相关资源
    最近更新 更多