java - JFileChooser 打开多个txt文件

标签 java swing jfilechooser

如何使用 JFileChooser 打开两个文本文件,选择这些文件后,我想比较它们,在屏幕上显示等。这可能吗?

最佳答案

您可以让您的 JFileChooser 选择多个文件并返回一个 File 对象数组而不是一个

JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(true);
chooser.showOpenDialog(frame);
File[] files = chooser.getSelectedFiles();

方法 showOpenDialog(frame) 仅在单击确定按钮后返回

编辑

这样做:

JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(true);
chooser.showOpenDialog(frame);
File[] files = chooser.getSelectedFiles();
if(files.length >= 2) {
    compare(readFileAsList(files[0]), readFileAsList(files[1]));
}

并将您的 readFileAsList 更改为:

private static List<String> readFileAsList(File file) throws IOException {
    final List<String> ret = new ArrayList<String>();
    final BufferedReader br = new BufferedReader(new FileReader(file));
    try {
        String strLine;
        while ((strLine = br.readLine()) != null) {
            ret.add(strLine);
        }
        return ret;
    } finally {
        br.close();
    }
}

关于java - JFileChooser 打开多个txt文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11922152/

相关文章:

java - 如何在 AWS 上运行 Spark Java 应用程序?

java - 从字符列表中创建字符串然后清除它的最有效方法

java - JNLP、Webstart 和 Maven

java - 为什么这个 JPanel 不可见?

java - 如何防止 GridBagLayout 改变按钮的大小

java - 从 Windows XP 中的 JFileChooser 获取路径值

Java:使用文件选择器保存 DrawingBoard(JComponent) 的图像。

java - 使用 TCP 通信比 HTTP 通信有何优势?

java - 加密文件夹并使用java应用程序打开

java - 重新绘制 JPanel