CsvData | サンプルソース | |
---|---|---|
外部CSVファイルのデータを読み込んで、形を整えて表示。最も初歩的な、ロジックとデータの分離手段です。 |
CsvData.java |
/** * 愛のJava256本ノック for Java 5.0 * Javaサンプルソース ver0.2C "CsvData" * CsvData.java 「CSVファイルを読み込む」 * * 2005/09/23 制作:安永ノリカズ * * 【コンパイル&実行方法】 * >javac CsvData.java * >java CsvData * 【キーワード】 * CSV(Comma Separated Values:カンマ区切りデータ), * 正規表現(regular expression), 例外(exception), * IO(Input/Output:入出力), ストリーム(stream:流れ), * 【試してみよう】 * finally節を利用し、例外が発生しても確実にファイルをクローズするようにする。 * ExcelのシートをCSV形式で出力して、Javaで読み込み表示する。 */ import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.lang.String; import java.lang.System; public class CsvData { public static void main(String[] A00){ String L00 = "busyo.csv"; try { BufferedReader L01 = new BufferedReader(new FileReader(L00)); String L02; while( (L02 = L01.readLine()) != null ) { String[] L03 = L02.split(","); System.out.printf("%s [政治:%3s 軍事:%3s 智謀:%3s 野望:%3s]%n", L03[0], L03[1], L03[2], L03[3], L03[4]); } L01.close(); } catch(FileNotFoundException L04) { System.out.println(L00 + "が見つかりませでした。"); } catch(IOException L05) { System.out.println(L00 + "を読み込めませんでした。"); } } } /* ■ クラスの外でちょっと一言 ■ CSVとは「データをカンマで区切りで記述したテキストファイル」のことです。 busyo.csvファイルをエディタで開いて中身を確認しておいてください。Excelの データを利用したいときは、*.csv形式で書き出しておいて、このようにして読 み込めばOKです(Jakarta POIで直接読む方法もあります)。 文字の分割を行っているsplitメソッドは、正規表現(java.util.regexパッケー ジ)が採用されたJ2SE1.4で、新たに追加されたメソッドです。それまでは、 java.util.StringTokenizerを利用して、whileループで取り出していたんです が、一発で配列に変換できるようになって便利になりましたね。 ちなみに、僕が最も愛する戦国シミュレーションゲームは、システムソフトの 『天下統一』。シンプルなシステムと、九州の武将のパラメータが高いところが グッドです。 */