java如何将用jxl读取的单元格数据放进jtabel表格中

java如何将用jxl读取的excel表格的指定单元格数据循环放进jtabel表格中

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
可以使用 jxl 库和 Swing 的 JTable 组件来将用 jxl 读取的单元格数据放进 JTable 表格中。下面是一个示例代码:

import java.io.File;
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;

public class ExcelToTable extends JFrame {
    private JPanel panel;
    private JTable table;

    public ExcelToTable() {
        panel = new JPanel();
        panel.setLayout(null);
        String filePath = "your_file_path.xls";
        File file = new File(filePath);
        try {
            Workbook workbook = Workbook.getWorkbook(file);
            Sheet sheet = workbook.getSheet(0);
            int rows = sheet.getRows();
            int cols = sheet.getColumns();
            String[] columnNames = new String[cols];
            Object[][] rowData = new Object[rows - 1][cols];
            for (int i = 0; i < cols; i++) {
                Cell cell = sheet.getCell(i, 0);
                columnNames[i] = cell.getContents();
            }
            for (int i = 1; i < rows; i++) {
                for (int j = 0; j < cols; j++) {
                    Cell cell = sheet.getCell(j, i);
                    rowData[i - 1][j] = cell.getContents();
                }
            }
            table = new JTable(rowData, columnNames);
            JScrollPane scrollPane = new JScrollPane(table);
            scrollPane.setBounds(10, 10, 570, 300);
            panel.add(scrollPane);
            add(panel);
            setSize(600, 400);
            setVisible(true);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        new ExcelToTable();
    }
}

在上面的代码中,首先通过 jxl 库读取指定的 Excel 文件,然后将表格数据存储在一个二维数组 rowData 中,同时将表头存储在一个一维数组 columnNames 中。接着,将 rowDatacolumnNames 作为参数传递给 JTable 组件,创建一个 JScrollPane 对象,将 JTable 放入 JScrollPane 中,最后将 JScrollPane 添加到 JFrame 窗口中。运行程序后,将会显示一个包含 Excel 表格数据的 JTable 组件。


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢


// 创建一个JTable对象
JTable table = new JTable();

// 读取Excel文件
Workbook workbook = Workbook.getWorkbook(new File("test.xls"));

// 获取第一个Sheet
Sheet sheet = workbook.getSheet(0);

// 获取行数和列数
int rows = sheet.getRows();
int cols = sheet.getColumns();

// 创建一个二维数组用于存放Excel数据
String[][] data = new String[rows][cols];

// 循环获取Excel数据并保存到数组中
for (int row = 0; row < rows; row++) {
   for (int col = 0; col < cols; col++) {
      Cell cell = sheet.getCell(col, row); // 获取单元格
      data[row][col] = cell.getContents(); // 获取单元格数据并存入数组
   }
}

// 将数据设置到JTable中
TableModel model = new DefaultTableModel(data, new String[]{"列1", "列2", "列3"});
table.setModel(model);