首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >openCSV解析单个列

openCSV解析单个列
EN

Stack Overflow用户
提问于 2012-06-15 07:16:29
回答 1查看 4.4K关注 0票数 1

我写了一个脚本,使用tokenize在groovy中解析.csv文件,结果并不完全符合我的需要,我正在尝试使用openCSV库,但我不确定如何解析出单独的列。到目前为止,我的代码如下:

代码语言:javascript
复制
List<String[]> rows = new CSVReader(
    new InputStreamReader(getClass().classLoader.getResourceAsStream(inputFileString)))
        .readAll()

        rows.each { row ->
            row.each { it ->
                println it
            }
        }

下面是我的输入数据:

代码语言:javascript
复制
1,"unknown","positive","full message","I love it."

所以我想弄明白的是如何打印行中的select列。同样感谢提前,我正在尝试了解groovy/java,我来自Ruby背景。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-15 16:54:06

不知道你所说的'...how to print select column in to row‘是什么意思

但此脚本(例如)打印每行的第4列:

代码语言:javascript
复制
@Grab( 'net.sf.opencsv:opencsv:2.3' )
import au.com.bytecode.opencsv.CSVReader

// This sets example to a 2 line string
// I'm using it instead of a file, as it makes
// an easier example to follow
def example = '''1,"unknown","positive","full message","I love it."
                |2,"tim","negative","whoop!","It's ok"'''.stripMargin()

List<String[]> rows = new CSVReader( new StringReader( example ) ).readAll()

rows.each {
  // print the 4th column
  println it[ 3 ]
}

这将打印:

代码语言:javascript
复制
full message
whoop!
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11042644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档