2012-06-25 15 views
7

リトル背景:Javaで文字列の配列を印刷/ログする方法は?

私は行の多くを持っており、各行は、文字列要素を持っている、そのような行の一例は、私のパーサで今

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

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

だろうcsvファイルを持って、私はこのcsvファイルを解析していますファイルに存在する各行を String[] dataとして取得します。私のログページでは、IDとファイル内の行が必要です。

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

デフォルトのtoString()を使用しようとしましたが、それでも同じLStringのデータを返します。

答えて

28

Arrays.toString(array)を使用すると、人間が判読できるものを入手できます。

+2

私は[Ljava.lang.String 'として値を取得します。1152e94' – Rachel

+0

@次に、あなたが' 'Arrays.toString()を使用していません。 http://ideone.com/F7wIX –

+0

@Rachelは不可能で、コードを投稿してください。 – dantuch

7

使用Arrays.toString(array);それが動作します

0

(「」)csvファイルの行を読むとのstring.Splitを呼び出して、あなただけのあなたのラインの各別々の文字列の配列を返します行に読み込んだ配列をループして、必要に応じて出力することができます。

String csvLine = scanner.nextLine(); 

String[] values = csvLine.split(","); 
for(String s : values){ 
    System.out.println(s); 
} 
関連する問題