Java:如何在 JTextField 中显示由 JFileChooser 打开的文件的内容?

标签 java file user-interface jtextfield jfilechooser

我开始学习 Java,但不知道如何在 JTextField 中显示由 JFileChooser 打开的给定文件的内容

这是我到目前为止的代码。

为了更好地理解我的程序,我删除了一些导入和代码。

public class Afvink6 extends JFrame implements ActionListener {

private JLabel bestandnaam;
private JTextField bestand;
private JButton blader;
private JButton analyseer;
private JLabel informatie;
private JTextArea textarea;
private JLabel naampercentage;
private JPanel percentages;
private PrintWriter outFile;
private JFileChooser fileChooser;
private int reply;




@Override
public void actionPerformed(ActionEvent event) {

    if(event.getSource() == blader){
        fileChooser = new JFileChooser();
        reply = fileChooser.showOpenDialog(this);
        if (reply == JFileChooser.APPROVE_OPTION) {
            File selectedFile = fileChooser.getSelectedFile();
            bestand.setText(selectedFile.getAbsolutePath());
        }
    }

    if(event.getSource() ==analyseer){

希望有人能帮助我!

最佳答案

File.getAbsolutePath() 仅返回路径名。您需要将 setText 设置为文件的实际内容。

您可以通过多种方式做到这一点。这是其中之一:

java.nio.file.Files.readAllLines(selectedFile.toPath(), Charset.defaultCharset());

例如,将返回一个列表,您可以将其全部连接在一起并在 JTextField 上设置Text以显示所有内容。

建议:您可能想使用 TextArea (显示多行)。请参阅:Loading a text file into a text area

关于Java:如何在 JTextField 中显示由 JFileChooser 打开的文件的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47040720/

相关文章:

java - 如何在JTable中获取图像图标

php - Laravel 文件上传只需将文件名发送到 Controller

c++ - C++中从文件中读取数据到队列中

java - 我开始学习使用 JFrame 和 JPanel。为什么我的代码不起作用?

user-interface - 什么是基于任务的 UI 的示例?

java - Eclipse 总是希望代码位于 com\folder 而不是 com.folder

java - 从字符串中提取两个数字

java - HashMap实现概念

c - 创建文件的自定义 header (元数据)

user-interface - 图标应该显示当前状态还是下一个状态?