/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package op.system; import javax.swing.*; import javax.swing.table.TableModel; /** * * @author tloehr */ public class TableModelHTMLConverter { /** * Erstellt ein HTML Dokument aus dem TableModel mit <b>allen</b> Spalten. * @param tbl - JTable, dass die Daten enthält. * @return */ public static String convert(JTable tbl) { TableModel tm = tbl.getModel(); int[] filter = new int[tm.getColumnCount()]; for (int i = 0; i < tm.getColumnCount(); i++){ filter[i] = i; } return convert(tbl, filter); } /** * * @param tbl - JTable, dass die Daten enthält. * @param filter - Array mit den Spaltennummern die mit in das HTML Dokument einbezogen werden sollen. Analog zur den Spaltennummern des TableModels. * @return */ public static String convert(JTable tbl, int[] filter) { String result = ""; TableModel tm = tbl.getModel(); result += "<table id=\"fonttext\" border=\"1\">"; result += "<tr>"; for (int i = 0; i < filter.length; i++) { result += "<th>"; result += tm.getColumnName(i); result += "</th>"; } result += "</tr>"; for (int row = 0; row < tm.getRowCount(); row++) { int r = tbl.convertRowIndexToModel(row); result += "<tr>"; for (int col = 0; col < tm.getColumnCount(); col++) { result += "<td>"; result += tm.getValueAt(r, col); result += "</td>"; } result += "</tr>"; } result += "</table>"; return result; } }