前提・実現したいこと
CSVファイルからデータを読み取り、カプセル化を行いたいです。
ここに質問の内容を詳しく書いてください。
mainクラスの中に読み込み用のメソッドを定義して、
outputクラスでsetter,getterを用いて
csvデータを格納し、表示につなげたいとおもっております。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
どのようにデータをわたしたらよいかわからないです
エラーメッセージ 今のところはまだ
該当のソースコード
package kadai4;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class Kad {
public static void main(String[] args) { //インスタンスメソッド作成 Kad getbookInfo = new Kad(); String[] input = getbookInfo.getBookInfo(); Kad read_data = new Kad(); List<String> readDataList = new ArrayList<String>(); readDataList = read_data.inputBookInfo(input); } private String[] getBookInfo () { BufferedReader br = null ; String line = null ; String[] input = null ; try{
// //バイトストリームをテキスト形式に変換、文字コードの指定
final InputStreamReader ORS = new InputStreamReader(new FileInputStream("BookTITLE.csv"), "SJIS");
// //テキスト形式に変換した上記ファイルの読み込み
br = new BufferedReader(ORS);
// 1行ずつCSVファイルを読み込む while((line = br.readLine()) != null ) {
// 行をタブ区切りで配列に変換 -1にすることでnullも取得できる
input = line.split(",",-1); //上記で配列に格納したデータを呼び出していく for (int i = 0 ; i < input.length ; i++) { //ここでsetterの使用? } } return input ; } catch (FileNotFoundException e) { final String NOT_FOUND = "ファイルが見つかりません。"; System.out.println(NOT_FOUND) ; } catch (IOException e) { final String IOERROR = "文字入力に関するエラー。" ; System.out.println(IOERROR); } catch (Exception e) { final String ERROR = "その他のエラー発生。" ; System.out.println(ERROR); } finally { try { br.close(); } catch (Exception e) { final String ERROR = "ファイルを閉じれませんでした。"; System.out.println(ERROR); } } return null; }
}
class Output {
String title;
String name;
String start;
String end;
int price;
String getTitle() { return this.title; } void setTitle (String title) { this.title = title; } String getName() { return this.name; } void setName (String name) { this.name = name; } String getStart() { return this.start; } void setStart (String start) { this.start = start; } String getEnd() { return this.end; } void setEnd (String end) { this.end = end; } int getPrice() { return this.price; } void setPrice (int price) { this.price = price; }
}
Java ソースコード
試したこと
ここに問題に対して試したことを記載してください。
netサーフィン、教科書のデータクラス、カプセル化、setter,getterについて調べ、
読みましたが、できません。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
csvファイルのデータは10行5列で、
タイトル,著者,製作開始日,終了日,売価
のデータが入ってます。
回答1件
あなたの回答
tips
プレビュー