2

我目前正在尝试让我的程序将数据从用户定义的 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.");
    }
}

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

我怎样才能使它正常工作?

4

1 回答 1

3

只有建议

  1. 您可以将Vector 或 Object[]直接放入JTable

  2. 因为java.util.List你必须实现自定义AbstractTableModel,因为JTableXxxTableModel是基于过早的Vector or Object[]

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

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

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

于 2012-08-17T14:11:50.283 回答