在csv文件

时间:2017-12-09 16:30:42

标签: java csv

我有带分隔符选项卡的csv文件,我想用值修改每一行。我可以参考这个案例吗?我已经在谷歌搜索但我无法获得良好的参考。什么是最佳做法?这个案例容易使用哪种库java?例如,我有csv文件包含:

value1 value2 value3 
value4 value5 value6
value7 value8 value9

我要修改成为:

value1 value2 value3 new_value1
value4 value5 value6 new_value2
value7 value8 value9 new_value3

我的csv文件大约有10,000行。什么样的逻辑可以有效地修改每一行?感谢。

2 个答案:

答案 0 :(得分:0)

我使用了this库并且非常满意。

如何使用它的一个示例tutorial就在这里。

读取每行的csv,添加新列并写入新的csv。祝你好运!

答案 1 :(得分:0)

如果您只是修改每一行并添加一个带有制表符分隔符的新列,则可以使用BufferedReader和BufferedWriter执行与以下类似的操作: -

BufferedReader br=null;
BufferedWriter bw=null;

try {
    File file = new File("csv file path");
    File newfile = new File("new output csv file path");

    br = new BufferedReader(new InputStreamReader(new FileInputStream(file))) ;
    bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(newfile)));

    String line = null;

    while((line = br.readLine())!=null){
        String addedColumn = "\t"+"newstring";
        bw.write(line+addedColumn+System.lineSeparator());
    }
} catch(Exception e){
    System.out.println(e);
} finally  {
    br.close();
    bw.close();
}

如果您的新列文本在每一行都在更改,请继续相应地修改此代码。希望这会有所帮助。