找不到符号 - 方法getAbsolutePath()java

时间:2017-11-29 18:14:17

标签: java swing import path

我尝试使用方法“getAbsolutePath()”但我总是得到相同的错误。 以下是我尝试使用它的方法:

class OpenFrequenciesL implements ActionListener {
        public void actionPerformed(ActionEvent e) {
            JFileChooser fileChooser = new JFileChooser();
            final FileNameExtensionFilter filter = new FileNameExtensionFilter("Text", "txt");
            fileChooser.setFileFilter(filter);
            int fileChooserResult = fileChooser.showOpenDialog(MyGUI.this);
            if (fileChooserResult == JFileChooser.APPROVE_OPTION) {
                filename.setText(fileChooser.getSelectedFile().getName());
                dir.setText(readLineByLineJava8(fileChooser.getAbsolutePath()));
            } if (fileChooserResult == JFileChooser.CANCEL_OPTION) {
                filename.setText("You pressed cancel");
                dir.setText("");
                }
            }
        }

我可能需要输入一些东西,但老实说,我甚至不确定我在这一点上做错了什么。以下是我导入的所有内容:

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.JFileChooser;
import javax.swing.text.JTextComponent;
import java.util.*;
import java.io.*;
import java.nio.file.*;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.Stream;
import java.io.File;

2 个答案:

答案 0 :(得分:1)

JFileChooser类没有getAbsolutePath()方法。

什么是dir变量?

看起来你也许想......

fileChooser.getCurrentDirectory().getAbsolutePath()

答案 1 :(得分:0)

这是因为你试图调用JFileChooser的方法getAbsolutePath(),它不存在。相反,您应该将dir.setText(...行替换为:

dir.setText(readLineByLineJava8(fileChooser.getSelectedFile().getAbsolutePath()));

这是因为JFileChooser没有getAbsolutePath()方法,因此您需要为其选择的文件(由getSelectedFile()返回)获取File对象并调用getAbsolutePath() on那是为了获取文件路径。

我希望这有帮助!