我在这里阅读了一些问题,但是我仍然不明白如何“修剪”日期,因为JTable单元格(列)将只有日期而没有时间。现在我在单元格中有日期和时间,但是在数据库中只有日期,这就是为什么我到处都有2013-04-02 00:00:00.0,但是我想2013年2月4日
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String Base = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)}; DBQ=SL2.mdb";
con = DriverManager.getConnection(Base,"","");
st = con.createStatement();
res2 = st.executeQuery("SELECT * FROM Apmeklejumi");
rsmd = res2.getMetaData();
int column = rsmd.getColumnCount();
columnNames.addElement("ID");
columnNames.addElement("Iestašanas datums");
columnNames.addElement("Sūdzības");
columnNames.addElement("Diagnoze");
columnNames.addElement("Rekomendācijas");
columnNames.addElement("Pacienta ID");
while(res2.next()) {
Vector row = new Vector(column);
row.addElement(res2.getObject("ID"));
row.addElement(res2.getObject("Ies_dat")); // <--- date
row.addElement(res2.getObject("Sudz"));
row.addElement(res2.getObject("Diag"));
row.addElement(res2.getObject("Rekom"));
row.addElement(res2.getObject("Pacienta_ID"));
data.addElement(row);
}
st.close();
con.close();
} catch(Exception e) {
e.printStackTrace();
}
最佳答案
请参见Table Format Renderers。给出了一个仅显示日期的简单示例。
编辑:
例如,您可以使用:
SimpleDateFormat format = new SimpleDateFormat("yy/MM/dd");
TableCellRenderer renderer = new FormatRenderer( format );
TableColumnModel tcm = table.getColumnModel();
tcm.getColumn(???).setCellRenderer(renderer);
通过上面我给您提供的链接,请不要忘记遵循“相关阅读”部分中的链接。