Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

Java(eclipse)でCSVファイルから文章を読み込んで1カンマづつ改行する出力を作りたい。

Java(eclipse) でテキストファイル(CSVファイル)から文章を読み込ん
で、1カンマづつ改行する出力を作りたい。

番号、氏名、氏名(カナ)、性別、電話番号、Fax、携帯電話、Mailの
項目を1カンマづつ改行して出力したいです。
120人分のデータです。
ご協力お願いします。


csvファイルはこんな感じです

番号、氏名、氏名(カナ)、性別、電話番号、Fax、携帯電話、Mail
0,山田,ヤマダ,男,090~,090~,090~,abc~
1,山口,ヤマグチ,女,091~,091~,091~,bcd~
みたいな感じで120行です。

今んとこ出来ているのは下のような感じなのですが、1行しか出力し
てくれません。
どうしたら直りますでしょうか?

import java.io.*;
import java.util.regex.Pattern;

class Name17 {

public static void main(String args[]){

Name6 n = new Name6();

Csv csv = new Csv();
csv.readCsvFile();


n.setNumber(csv.Num1);
n.setName(csv.Name1);
n.setKana(csv.Kana1);
n.setSeibetsu(csv.Seibetsu1);
n.setTel(csv.Tel1);
n.setFax(csv.Fax1);
n.setKeitai(csv.Keitai1);
n.setMail(csv.Mail1);


String s1 = n.getNumber();
String s2 = n.getName();
String s3 = n.getKana();
String s4 = n.getSeibetsu();
String s5 = n.getTel();
String s6 = n.getFax();
String s7 = n.getKeitai();
String s8 = n.getMail();


System.out.println("番号 : " + s1 );
System.out.println("名前 : " + s2 );
System.out.println("名前(カタカナ) : " + s3 );
System.out.println("性別 : " + s4 );
System.out.println("電話番号 : " + s5 );
System.out.println("FAX : " + s6 );
System.out.println("携帯電話 : " + s7 );
System.out.println("メールアドレス : " + s8 );
System.out.println("");


return;

}

}

class Name6{


private String str;
private String Num;
private String Name;
private String Kana;
private String Seibetsu;
private String Tel;
private String Fax;
private String Keitai;
private String Mail;


public void setNumber(String num){
this.Num = num;
}
public String getNumber(){
return this.Num;
}

public void setName(String name){
this.Name = name;
}
public String getName(){
return this.Name;
}

public void setKana(String kana){
this.Kana = kana;
}
public String getKana(){
return this.Kana;
}

public void setSeibetsu(String seibetsu){
this.Seibetsu = seibetsu;
}
public String getSeibetsu(){
return this.Seibetsu;
}

public void setTel(String tel){
this.Tel = tel;
}
public String getTel(){
return this.Tel;
}

public void setFax(String fax){
this.Fax = fax;
}
public String getFax(){
return this.Fax;
}

public void setKeitai(String keitai){
this.Keitai = keitai;
}
public String getKeitai(){
return this.Keitai;
}

public void setMail(String mail){
this.Mail = mail;
}
public String getMail(){
return this.Mail;
}

public String toString(){
return "Name6[str : " + str + "]";
}
}


class Csv{


public String Num1;
public String Name1;
public String Kana1;
public String Seibetsu1;
public String Tel1;
public String Fax1;
public String Keitai1;
public String Mail1;


public void readCsvFile(){


try {

FileReader fr = new FileReader("c:\\Name.csv");
BufferedReader br = new BufferedReader(fr);

Pattern p ;
p = Pattern.compile (",", 8);

while (br.ready()){

String line = br.readLine();
String[] strs = p.split(line);



Num1 = strs[0];
Name1 = strs[1];
Kana1 = strs[2];
Seibetsu1 = strs[3];
Tel1 = strs[4];
Fax1 = strs[5];
Keitai1 = strs[6];
Mail1 = strs[7];

}

}catch (IOException e){
e.printStackTrace();
}


}
}
 

1

回答

94866

閲覧

1件の回答

評価

0

悪いことは言わないから、応用編に手を付ける前に基礎を勉強しよう。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。