java - 如何使用 JFileChooser 将 CSV 文件数据输入到 JTable 中

标签 java swing jtable jfilechooser opencsv

我目前正在尝试让我的程序将数据从用户定义的 CSV 文件输入到 JTable 中。但是,由于某种原因,它无法正常工作,每当我尝试加载或保存文件时,Netbeans 都会向调试器抛出一些异常。

private void openActionPerformed(java.awt.event.ActionEvent evt)
{                                     
    int returnVal = fileChooser.showOpenDialog(this);
    if (returnVal == JFileChooser.APPROVE_OPTION) {
        File file = fileChooser.getSelectedFile();
        try {
            // What to do with the file, e.g. display it in a TextArea
            CSVReader reader = new CSVReader(new FileReader( file.getAbsolutePath()));
            List myEntries = reader.readAll();
            table (myEntries.toArray());
        } catch (IOException ex) {
            System.out.println("problem accessing file"+file.getAbsolutePath());
        }
    } else {
        System.out.println("File access cancelled by user.");
    }
}

这是我针对特定问题的代码。

如何才能使其正常工作?

最佳答案

仅提供建议

  1. 你可以输入 Vector or Object[]JTable直接

  2. 对于java.util.List,您必须实现自定义AbstractTableModel ,因为 JTable 及其 XxxTableModel 是基于不成熟的 Vector 或 Object[]

  3. XxxTableModel 的所有更新都必须在 EventDispatchThread 上完成

  4. 为了获得更好的帮助,请尽快发布 SSCCE ,其中 CSV 文件 中的内容应直接硬编码到 java.util.List

  5. JTable( View )的所有数据都存储到 XxxTableModel(模型)

关于java - 如何使用 JFileChooser 将 CSV 文件数据输入到 JTable 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12007308/

相关文章:

java - Servlet 加载新页面

java - 如何避免 BuildPath 中的循环(特定项目设置)

java - 如何将JDialog置于顶部

java - 从另一个项目实现 gui

java - 如何获得正确的 JTable 宽度?

java - JTable 复选框应在选中时启动计时器

java - 如何使用链接表在 Hibernate 中映射多对多列表

java - 奇怪的 Java 行为

java - 如何在没有任何确定或取消选项的情况下在 Java 中仅显示纯消息?

java - HashMap 条目不会进入列