【问题标题】:Is there a way to make Xerces-C pretty-print XML without double-spaced lines?有没有办法在没有双倍行距的情况下制作 Xerces-C 漂亮打印 XML?
【发布时间】:2021-04-19 16:30:21
【问题描述】:

我正在使用 xerces-c 来编写 XML。默认情况下,它将整个 DOM 写入为单行文本。我尝试了如下所示的漂亮打印选项,现在它打印双倍行距 - 在我看来,这不是很漂亮。有没有办法避免双倍间距?

void configureWriter(DOMLSSerializer* writer) {
    writer->getDomConfig()->setParameter(XMLUni::fgDOMWRTFormatPrettyPrint, true);
}

输出:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<MyDocument>

  <A>B</A>

  <D>E</D>

</MyDocument>

【问题讨论】:

    标签: c++ xml xerces


    【解决方案1】:

    好的,我找到了答案。还有一个名为“fgDOMWRTXercesPrettyPrint”的不同选项,如果您也关闭此选项关闭,则输出中没有空行。

    void configureWriter(DOMLSSerializer* writer) {
      writer->getDomConfig()->setParameter(XMLUni::fgDOMWRTFormatPrettyPrint, true);
      writer->getDomConfig()->setParameter(XMLUni::fgDOMWRTXercesPrettyPrint, false);
    }
    

    输出:

    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <MyDocument>
      <A>B</A>
      <D>E</D>
    </MyDocument>
    

    这是给我答案的邮件线程:http://mail-archives.apache.org/mod_mbox//xerces-c-users/200908.mbox/%3C4A7697C0.1000304@datadirect.com%3E

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-29
      • 2018-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-16
      相关资源
      最近更新 更多