Java分割CSV有两种模式

时间:2015-11-20 15:57:48

标签: java parsing csv export-to-csv

我有这种格式的CSV,我需要分成16个部分,根据文字的说明:

"MY TEXT","EVER, OK",,,,,,,,,,"The, CARLO","DO","ALFA","OME, GA",,

我有这种方式,但是如果在“OME,GA”中出现带有逗号的案例,则无效。

String[] lineToMap = line.split(",");

我如何控制这种情况?

解决方案

我发现这个库:OPEN CSV,在我的测试工作中非常好,但是我的编码有问题( 等ü等奇怪的符号),字符如ü,ö等。我正在使用语言像德国和法国。我正在使用UTF-8进行测试但是没有用,有没有想过要解决这个问题?

CSVReader reader=new CSVReader(new InputStreamReader(new FileInputStream("data/test.csv"), "UTF-8"), 
                ',', '"', 0);
         //Read CSV line by line and use the string array as you want
          String[] nextLine;
          try {
            while ((nextLine = reader.readNext()) != null) {
                 if (nextLine != null) {
                    for (String element : nextLine) {
                        System.out.println(element);
                    }                   
                 }
               }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

1 个答案:

答案 0 :(得分:-3)

尝试在","上进行拆分,并手动处理数组开头和结尾的边缘情况。