はじめに
この記事は、ともに研修課題を解いている僕の同期を想定して書かれています。
超初心者向けです。
csvファイルの中身
メールアドレスが一列目、名前が二列目。
ここでは、名前を出力することを目指します。
1つのディレクトリにjavaファイルとcsvファイル(テキストファイル)を置いてください。
ieoronw@sample.co.jp,山田
uehi3ui.wjhi221@sample.co.jp,佐藤
1995hhfhhrh@sample.co.jp,田中
コード
クラスの外側を以下のように準備します。
クラス名はここでは Search とします。
import java.io.*;
class Search{
public static void main(String[] args)throws IOException{
//コード
}
}
クラスの内側を以下のように準備します。
コマンドライン引数には*****.txtのようにファイル名のみ入力します。
File file = new File(args[0]);
次に、br1でcsvファイルを受け取ります。
BufferedReader br1 = new BufferedReader(new InputStreamReader(System.in));
br1 = new BufferedReader(new FileReader(file));
次に、文字列型で読み込み行と配列を準備します。
String line;
String[] data;
csvファイルを一行ずつ処理するためのwhile文を用意します。
str_1が、csvファイルの2列目となっていますので、これを出力します。
while ((line = br1.readLine()) != null) {
data = line.split(",");
//配列の1番目は0、2番目は1,,,,
String str_0 = data[0];
String str_1 = data[1];
System.out.println(str_1);
}
実行結果
山田
佐藤
田中
Tips
qiitaのコードは右上のマークでコピーできます。インデントも揃えておいたのでそのままエディタに貼り付けてください。
ファイルが3列以上ある場合、String str_2 = data[2];などを追加してください。
おことわり
今回は超初心者向けなので、最低限のことしか書いていません。
なので、try文は用いていません。
でも本当は、BufferedReaderを使うならtry文を使ってください。