可以使用带有双引号的Groovy MarkupBuilder生成XML吗?

dja*_*fan 4 java xml groovy

使用此代码:

xml = new groovy.xml.MarkupBuilder() 
xmldata = xml.Plugins(nextid: '10') {
   Target(name: 'default.auth') {
     Port(protocol: 'https') {
       mkp.yield 8080
     }
   }
}
Run Code Online (Sandbox Code Playgroud)

生成此输出:

<Plugins nextid='10'>
  <Target name='default.auth'>
    <Port protocol='https'>8083</Port>
  </Target>
</Plugins>
Run Code Online (Sandbox Code Playgroud)

但是,有没有办法用双引号生成这样的输出?

<Plugins nextid="10">
  <Target name="default.auth">
    <Port protocol="https">8083</Port>
  </Target>
</Plugins>
Run Code Online (Sandbox Code Playgroud)

Jim*_*son 11

是的,这是文档.MarkupBuilder.setDoubleQuotes(true)

如果链接变坏(从上面的链接复制,适用于Groovy 2.4.10)


setDoubleQuotes

public void setDoubleQuotes(boolean useDoubleQuotes)
Run Code Online (Sandbox Code Playgroud)

设置构建器是以双引号还是单引号输出属性值.

参数:

  • useDoubleQuotes - 如果此参数为true,则使用双引号; 否则,单引号是.