设想
需要更新现有 XML 文件中的一些属性。该文件包含一个 XSL 处理指令,因此在解析和更新 XML 时,我需要在再次将其写入文件之前添加该指令。问题是 - 无论我做什么 - 我都无法插入处理指令
基于在 rgagnon.com 上找到的 Java 示例,我创建了以下代码
示例代码##
import groovy.xml.*
def xml = '''|<something>
| <Settings>
| </Settings>
|</something>'''.stripMargin()
def document = DOMBuilder.parse( new StringReader( xml ) )
def pi = document.createProcessingInstruction('xml-stylesheet', 'type="text/xsl" href="Bp8DefaultView.xsl"');
document.insertBefore(pi, document.documentElement)
println document.documentElement
创建输出
<?xml version="1.0" encoding="UTF-8"?>
<something>
<Settings>
</Settings>
</something>
我想要的是
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="Bp8DefaultView.xsl"?>
<something>
<Settings>
</Settings>
</something>