更具体地说,它确实有效,但是仅当我选择程序及其资源所在的源文件夹中存在的文件时,该文件才有效。当我将文件移动到桌面或“我的文档”并尝试从那里读取文件时,出现一个FileNotFoundException

这是我的代码:

private void btnBrowseFileActionPerformed(java.awt.event.ActionEvent evt) {
    JFileChooser myFileChooser = new JFileChooser();
    int rVal = myFileChooser.showOpenDialog(Singlelayer.this);
    if (rVal == JFileChooser.APPROVE_OPTION) {
        txtFile.setText(myFileChooser.getSelectedFile().getName());
    }
}


如您所见,它被附加到“浏览...”按钮上,因此它是GUI的一部分。但这不是重点。

它不适用于其他源文件不在项目文件夹中的任何文件。不能完全确定发生了什么,但任何帮助将不胜感激。

最佳答案

您正在使用文件名:

txtFile.setText(myFileChooser.getSelectedFile().getName());

返回文件名。因此,它仅识别源文件夹中的文件。

相反,您应该使用file path

07-27 13:33