0

我有一个 csv 文件。我正在将其上传到 MySQL。上传时,我必须检查每一行中是否存在所有值。例如:

    File A has
    aaa, bbb, ccc, ddd (line 1)
    eee, fff, ggg, hhh (line 2)
    iii, jjj, kkk (line 3)
    jjj, kkk, lll, mmm (line 4 )

在上面的文件中,第 3 行只有 3 个值。要求是第三行必须写在单独的文件中。其他三行必须更新表。

它应该跳过第 3 行并且必须写入单独的文件。

有什么帮助吗?

4

2 回答 2

0

你可以使用这样的东西,

while ((line = bufRdr.readLine()) != null) {

           StringTokenizer st = new StringTokenizer(line, delims);
           int length = st.countTokens();
           System.out.println("len " + st.countTokens());
           if (length != 4) {
               continue;
           }
           writer.write(line);// you can save all the lines with 4 words into another csv file

       }
于 2013-10-30T14:29:31.580 回答
0
String csvFile = "file.csv";
String line;

BufferedReader br = new BufferedReader(new FileReader(csvFile)); 

while((line = br.readLine()) != null) {

    String[] country = line.split(",");
    if(country.length == 4) {
        //Do whatever should be done
    } 
}

这是基于http://www.mkyong.com/java/how-to-read-and-parse-csv-file-in-java/中的示例 1

你当然应该做任何你需要修改存在的元素的数量

于 2013-10-30T14:19:16.137 回答