下記のサイトからSuperCSVというライブラリを
ダウンロードして解凍します。
http://supercsv.sourceforge.net/
そして、以下のjarファイルをeclipseの適当なフォルダにコピーして
jarファイルにマウスカーソルを乗せて右クリック=>ビルドパスに追加をしてください。
・SuperCSV-with_src-1.52.jar
・spiffy-with_source-all-0.05.jar
そして、以下のようなコードを書いて実行してみてください。
----------------------------------------------------------
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;
import org.supercsv.io.CsvListReader;
import org.supercsv.io.ICsvListReader;
import org.supercsv.prefs.CsvPreference;
public class CSVTest2 {
public static void main(String[] args) {
try {
ICsvListReader reader = new CsvListReader(
new FileReader("sample.csv"), CsvPreference.EXCEL_PREFERENCE);
List<String> list = null;
while ((list = reader.read()) != null){
for (String str : list) {
System.out.print(str);
}
System.out.println();
}
} catch (FileNotFoundException e) {
System.out.println("ファイルがないです");
} catch (IOException e) {
System.out.println("読み込みでエラーになりました");
}
}
}
----------------------------------------------------------
sample.csv
列1,列2,列,列4
"たれみ
みうさぎ","ホーランド,ロップ","ミニ
レッキス""!""アンドレッキス"
----------------------------------------------------------
実行結果
列1列2列列4
たれみ
みうさぎホーランド,ロップミニ
レッキス"!"アンドレッキス
----------------------------------------------------------
いかがでしょうか?
赤字の1行でCSVファイルの取り込み準備ができてしまいました。
あとはループで回して取得するだけです。
なーんだ、ライブラリ使っただけじゃん!
と思ったかもしれません。
でも、実際の現場ですでに誰かが書いたプログラムをもう一度自分
で一から書くという行為にどのくらいの意味があるのでしょうか?
ライブラリを作った人よりもコーディングが上手で、ものすごい
勢いでキーを叩ける人は別だと思います。
しかし、そうでない人は
・これから書こうとするソースをすでに誰かが書いていないかをチェックし
・見つけたら良さそうかどうか見極め
・自分がこれから作ろうとするシステムで使っても耐えられるかをテストし
・サクっと使いこなす
という技術も必要なのではないでしょうか?
よく、何もかも1から書こうとする人を現場で見かけますが自作するのは探しても
見つからない場合にとどめたほうが良いでしょう。
次回は
「自分がこれから作りたいシステムで使用しても耐えられるかをチェック」
するにはどうするか?について書いてみたいと思います。
eclipseについての無難なマニュアルが欲しい方は↓に無難な本があります。
CDもついているので気軽にeclipseの機能を試せます。
- Eclipse 3.5 完全攻略/宮本 信二
- ¥2,940
- Amazon.co.jp
