2016-06-30 4 views
2

私はCSVファイルから読み込むためにこれらのコード行を持っている:CSVファイルから何かを読む方法は?

public static void main(String[] args) throws FileNotFoundException, IOException { 

    CSVReader reader = new CSVReader(new FileReader("file.csv")); 
    List myEntries = reader.readAll(); 
    System.out.println(myEntries); 
} 

しかし、それは私に返している:

[[Ljava.lang.String;@6bc7c054, [Ljava.lang.String;@232204a1, etc. 

私のCSVファイルをエクセルのように列と行を(含まれていますファイル)。私はnamesocietyimport、...

ファイル内の内容を正確に読み取るにはどうすればよいですか?

答えて

2

まず、ロータイプを使用しないでください:List<String[]> myEntries

第2に、各リスト要素(String[])をStringに変換するとやや役に立たない結果になります。暗黙的にも明示的にも、配列上でtoString()を呼び出すことはほとんどありません。

代わりに、 "有効" の各要素を印刷するArrays.toString()を使用して、リストを反復:

for (String[] row : myEntries) { 
    System.out.println(Arrays.toString(row)); 
} 
+0

okです。これはうまくいった。ありがとうございました。 – Marco

0

のJava 8バージョン:

myEntries.forEach(stringArray -> System.out.println(Arrays.toString(stringArray))); 

改行は必要ではない場合:

System.out.println(Arrays.deepToString(myEntries.toArray())); 
+1

または 'myEntries.stream()。map(Arrays :: toString).forEach(System.out :: println);' – shmosel

関連する問題