0

JavaプロジェクトにOpenCSVリーダーがあり、CSVファイルからデータを読み取っていますが、現在、それを読み取るループ内の列の数をハードコーディングしています。列の数を取得できるメソッドがいくつかあったことを思い出すことができますが、それが何と呼ばれ、どのように使用されたかは覚えていません。

コードは次のとおりです。

public ArrayList<ArrayList<String>> getCSVContent(String filepath) throws Exception {
        CSVReader reader = new CSVReader(new FileReader(FILE_PATH));
        ArrayList<ArrayList<String>> array = new ArrayList<ArrayList<String>>();
        String[] nextLine;
        while ((nextLine = reader.readNext()) != null) {
            ArrayList<String> list = new ArrayList<String>();
            for (int i = 0; i < 5; i++) { //5 is the number of columns in the file 
                list.add(nextLine[i]);
            }
            array.add(list);
        }
        reader.close();
        return array;
    }
4

3 に答える 3

2

で配列内のアイテムを数えるだけnextLine.lengthです。

for (int i = 0; i < nextLine.length; i++) { 
  list.add(nextLine[i]);
}

または、for-each ループを使用します。

for (String col : nextLine) {
  list.add(col);
}
于 2013-08-12T08:26:42.600 に答える
-1

列数を取得するには、これを試してください。reader.getColumnCount()

于 2013-08-12T08:29:08.927 に答える