「Java/swing/サンプル/JTableにCsvファイルを読み込んで表示」の編集履歴(バックアップ)一覧はこちら

Java/swing/サンプル/JTableにCsvファイルを読み込んで表示」(2012/10/22 (月) 01:51:27) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

&ref(swingCsvファイルを読み込みJTableに表示) *** サンプルダウンロード &ref(CsvToJTable.java) &ref(CsvRead.csv) *** ソース #highlight(java){{ import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; public class CsvToJTable extends JFrame { JTable tbl; DefaultTableModel model; public static void main(String[] args) { new CsvToJTable(); } public CsvToJTable() { setTitle("Csvを読み込んでJTableに表示"); setBounds(200, 100, 300, 200); setDefaultCloseOperation(EXIT_ON_CLOSE); // Csvファイルから表示データ作成 Vector<Vector<String>> data = readCsv(new File("CsvRead.csv")); // カラムの名前をベクターに設定 Vector<String> names = new Vector<String>(); names.add("ID"); names.add("タイトル"); names.add("日付"); // 表示データと名前からテーブルモデル作成 model = new DefaultTableModel(data, names); // テーブルモデルからJTableを作成 tbl = new JTable(model); // JTableをフレームに追加 add(new JScrollPane(tbl)); setVisible(true); } // CSVファイルを読み込んで、Vectorに詰めて返します。 public static Vector<Vector<String>> readCsv(File f) { Vector<Vector<String>> data = new Vector<Vector<String>>(); try { FileInputStream s = new FileInputStream(f); // 文字コードを変える場合は、InputStreamReaderの第二引数を変更するとよいです。 InputStreamReader r = new InputStreamReader(s, "Shift_JIS"); BufferedReader br = new BufferedReader(r); String line; while ((line = br.readLine()) != null) { line = line.substring(1, line.length() - 1); String[] ary = line.split("\",\""); Vector<String> v = new Vector<String>(); for (String cell : ary) { v.add(cell); } data.add(v); } br.close(); r.close(); s.close(); } catch (IOException e) { e.printStackTrace(); } return data; } } }}
&ref(swingCsvファイルを読み込みJTableに表示.png) *** サンプルダウンロード &ref(CsvToJTable.java) &ref(CsvRead.csv) *** ソース #highlight(java){{ import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; public class CsvToJTable extends JFrame { JTable tbl; DefaultTableModel model; public static void main(String[] args) { new CsvToJTable(); } public CsvToJTable() { setTitle("Csvを読み込んでJTableに表示"); setBounds(200, 100, 300, 200); setDefaultCloseOperation(EXIT_ON_CLOSE); // Csvファイルから表示データ作成 Vector<Vector<String>> data = readCsv(new File("CsvRead.csv")); // カラムの名前をベクターに設定 Vector<String> names = new Vector<String>(); names.add("ID"); names.add("タイトル"); names.add("日付"); // 表示データと名前からテーブルモデル作成 model = new DefaultTableModel(data, names); // テーブルモデルからJTableを作成 tbl = new JTable(model); // JTableをフレームに追加 add(new JScrollPane(tbl)); setVisible(true); } // CSVファイルを読み込んで、Vectorに詰めて返します。 public static Vector<Vector<String>> readCsv(File f) { Vector<Vector<String>> data = new Vector<Vector<String>>(); try { FileInputStream s = new FileInputStream(f); // 文字コードを変える場合は、InputStreamReaderの第二引数を変更するとよいです。 InputStreamReader r = new InputStreamReader(s, "Shift_JIS"); BufferedReader br = new BufferedReader(r); String line; while ((line = br.readLine()) != null) { line = line.substring(1, line.length() - 1); String[] ary = line.split("\",\""); Vector<String> v = new Vector<String>(); for (String cell : ary) { v.add(cell); } data.add(v); } br.close(); r.close(); s.close(); } catch (IOException e) { e.printStackTrace(); } return data; } } }}

表示オプション

横に並べて表示:
変化行の前後のみ表示: