【问题标题】:Remove newlines from MarkupBuilder result从 MarkupBuilder 结果中删除换行符
【发布时间】:2010-03-30 10:11:52
【问题描述】:

有没有办法控制 groovy 的 MarkupBuilder 的输出并过滤掉换行符?我有如下代码:

import groovy.xml.MarkupBuilder

def writer = new StringWriter()
def xml = new MarkupBuilder(writer)
xml.basket(){
    fruit (type:"apple", 1)
    fruit (type:"orange", 2)    
}  

总是输出:

<basket>
  <fruit type='apple'>1</fruit>
  <fruit type='orange'>2</fruit>
</basket>

我真的很喜欢单行:

<basket><fruit type='apple'>1</fruit><fruit type='orange'>2</fruit></basket>

【问题讨论】:

    标签: groovy markupbuilder


    【解决方案1】:

    您可以使用 StreamingMarkupBuilder 来做到这一点:

    import groovy.xml.StreamingMarkupBuilder
    
    def xml = new StreamingMarkupBuilder().bind {
      basket(){
        fruit (type:"apple", 1)
        fruit (type:"orange", 2)    
      }
    }
    println xml.toString()
    

    打印出来

    <basket><fruit type='apple'>1</fruit><fruit type='orange'>2</fruit></basket>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-25
      • 1970-01-01
      • 2015-10-15
      • 2015-11-08
      • 1970-01-01
      • 2011-05-24
      • 2019-03-29
      相关资源
      最近更新 更多