web-dev-qa-db-ja.com

Javaで文字列の配列を印刷/ログに記録する方法は?

少し背景:

たくさんの行があり、各行に文字列要素があるcsvファイルがあります。このような行の一例は、次のようになります。

_String[] data = [20,11,Clothing,TShirts,Abercombie,Gap]

data.toString() = [Ljava.lang.String;@1152e94]
_

現在、パーサーで、このcsvファイルを解析し、ファイル内に存在する各行を_String[] data_として取得しています。私のログページでは、ファイルに存在するIDと行が必要です。

現在、印刷しようとすると_[Ljava.lang.String;@1152e94_のような値を取得していますが、私の質問は、_[20, 11, Clothing, TShirts, Abercombie, Gap]_のような配列要素の実際のリストを取得するにはどうすればよいですか?

デフォルトのtoString()を使用してみましたが、それでも同じLStringデータが得られます。

18
Rachel

Arrays.toString(array) を使用して、より人間が読める形式のものを取得します。

41
Matt Ball

Arrays.toString(array);を使用します

8
dantuch

可能性があります: Java配列? を出力する最も簡単な方法は何ですか?)

String[] data = [20,11,Clothing,TShirts,Abercombie,Gap]
Arrays.toString(data);

または

Arrays.deepToString(data);
0
Anton Bessonov

Csvファイルの行を読み取り、その行でString.split( "、")を呼び出すと、今読んだ行の個別の文字列の配列が返されます。配列をループして、そのまま印刷できます。必要。

String csvLine = scanner.nextLine();

String[] values = csvLine.split(",");
for(String s : values){
  System.out.println(s);
}
0
ChadNC