我有一个CSV文本文件,想要从中创建XML结构 输入看起来像这样:
1,MID,120,XX
2,MTS,223,yy
输出应为
<Root>
<Row>
<field1>1</field1>
<field2>MID</field2>
<field3>120</field3>
<field4>XX</field4>
</Row>
<Row>
<field1>2</field1>
<field2>MTS</field2>
<field3>223</field3>
<field4>yy</field4>
</Row>
</Root>
我是Groovy的新人,谢谢
答案 0 :(得分:2)
您可以使用CSV解析器和MarkupBuilder
@Grab('com.xlson.groovycsv:groovycsv:1.1')
import static com.xlson.groovycsv.CsvParser.parseCsv
import groovy.xml.*
def csv = '''1,MID,120,XX
2,MTS,223,yy
'''
def writer = new StringWriter()
def data = parseCsv(csv, readFirstLine: true)
new MarkupBuilder(writer).root {
data.each { row ->
Row {
row.values.eachWithIndex { k, idx ->
"Value$idx"(k)
}
}
}
}
println writer.toString()