Grails CSV插件,CSVWriter示例不起作用

时间:2011-05-18 21:02:18

标签: plugins grails csv groovy

我正在研究Grails项目,我想将不同域对象的一些数据写入csv。我以为我可以使用CSV插件。我下载并安装了Grails CSV插件v.3并使其正常工作我只是想我会尝试这个例子。不幸的是,这个例子不起作用,我不知道为什么。我发布了以下示例。

def sw = new StringWriter()
def b = new CSVWriter(sw) {
  col1 { it.val1 }
  col2 { it.val2 }
}
b << [val1: 'a', val2: 'b']
b << [val1: 'c', val2: 'd']
assert b.writer.toString() == '''"col1","col2"
"a","b"
"c","d"'''

在col1处抛出一个编译错误,说明了意外的令牌。我在这里做错了吗?

我也在查看导出插件,但似乎我不能使用来自多个域类的数据。

1 个答案:

答案 0 :(得分:0)

尝试将代码更改为:

def sw = new StringWriter()
def b = new CSVWriter(sw, {
  col1 { it.val1 }
  col2 { it.val2 }
})

通常,当最后一个参数是闭包时,您可以在括号外指定它,但它仅适用于顶级表达式 - 在此示例中,顶级表达式是赋值。