我在这里阅读了一些问题,但是我仍然不明白如何“修剪”日期,因为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);


通过上面我给您提供的链接,请不要忘记遵循“相关阅读”部分中的链接。

09-11 18:08
查看更多