文章目录
- 一、使用 MarkupBuilder 生成 xml 数据
- 二、完整代码示例
一、使用 MarkupBuilder 生成 xml 数据
生成
代码语言:javascript复制<student>
<name code="utf-8">Tom</name>
<age>18</age>
</student>
样式的 xml 文件 ,
首先 , 创建 FileWriter 对象 , 之后用于将生成的 xml 数据输出到文件中 ;
代码语言:javascript复制def fileWriter = new FileWriter(new File("a.xml"))
然后 , 创建 MarkupBuilder 对象 , 构造函数中传入 FileWriter 表示将 xml 文件写出到文件中 ;
代码语言:javascript复制// 创建 MarkupBuilder 对象
// 构造函数中传入 FileWriter 表示将 xml 文件写出到文件中
def markupBuilder = new MarkupBuilder(fileWriter)
最后 , 生成 xml 数据 ;
代码语言:javascript复制// 生成上述 xml 文件
markupBuilder.student{
// 格式如下 :
// xml 标签名称( 标签内容 , 标签属性 : 标签属性值)
// 生成标签内容 : 标签内容直接写上即可
// 生成标签属性 : 标签属性使用键值对方式生成
name("Tom", code: "utf-8") {}
age(18) {}
}
这里详细介绍下 xml 数据的生成过程 ,
代码语言:javascript复制markupBuilder.student
表示 , 生成的 xml 数据的根节点是 <student></student>
,
xml 数据中的 标签 生成格式如下 :
代码语言:javascript复制xml 标签名称( 标签内容 , 标签属性 : 标签属性值)
- 生成标签内容 : 标签内容直接写在括号中即可 ;
age(18){}
代码就可以生成<age>18</age>
内容 ; - 生成标签属性 : 标签属性使用键值对方式生成 ;
name("Tom", code: "utf-8") {}
代码可以生成<name code="utf-8">Tom</name>
内容 ;
二、完整代码示例
完整代码示例 :
代码语言:javascript复制import groovy.xml.MarkupBuilder
"""
<student>
<name code="utf-8">Tom</name>
<age>18</age>
</student>
"""
def fileWriter = new FileWriter(new File("a.xml"))
// 创建 MarkupBuilder 对象
// 构造函数中传入 FileWriter 表示将 xml 文件写出到文件中
def markupBuilder = new MarkupBuilder(fileWriter)
// 生成上述 xml 文件
markupBuilder.student{
// 格式如下 :
// xml 标签名称( 标签内容 , 标签属性 : 标签属性值)
// 生成标签内容 : 标签内容直接写上即可
// 生成标签属性 : 标签属性使用键值对方式生成
name("Tom", code: "utf-8") {}
age(18) {}
}
生成的 xml 文件如下 :
代码语言:javascript复制<student>
<name code='utf-8'>Tom</name>
<age>18</age>
</student>
下图中 , 右侧的 a.xml 就是生成的 xml 文件 ;