如何将JTable数据检索为数组

Ale*_*ing 0 java arrays swing jtable

我通过带有(Object[][]data,String[]headers)构造函数的DefaultTableModel填充了一个JTable .用户可以编辑表,我希望能够将新数据加载回数组(Object[][]).请注意,我不是一点一点地更新数组,而是能够从表中完全加载一个新数组.如何才能做到这一点?

Man*_*pta 22

我把它拿回来,第二个想法,你不需要任何类型转换 - TableModel是一个接口,它具有你需要的所有3个方法调用.:)

简介:获取表的模型,检查其类并将其类型转换为适当的类(Abstract或Default TableModel),并使用其方法加载新创建的数组.一些psuedoCode:

public Object[][] getTableData (JTable table) {
    DefaultTableModel dtm = (DefaultTableModel) table.getModel();
    int nRow = dtm.getRowCount(), nCol = dtm.getColumnCount();
    Object[][] tableData = new Object[nRow][nCol];
    for (int i = 0 ; i < nRow ; i++)
        for (int j = 0 ; j < nCol ; j++)
            tableData[i][j] = dtm.getValueAt(i,j);
    return tableData;
}
Run Code Online (Sandbox Code Playgroud)

您的标题不应该由用户编辑更改.希望有所帮助.问候, - MS