如何从GUI显示文本文件

时间:2013-12-03 02:43:45

标签: java swing user-interface filewriter

我正在研究数学琐事游戏程序,我需要的最后一部分是当用户点击查看分数时显示文件“Scores.txt”。我在下面的代码,低,看,只产生实际字符串“Scores.txt”而不是我的文件。即使我无法将文本文件转换为JOptionPane窗口,system.out.println也会很棒。任何帮助我显示我的文件将不胜感激。

JMenuItem mntmSave = new JMenuItem("Check out scores!");
    mntmSave.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {


        JOptionPane.showMessageDialog(null, "Scores.txt");



        }

3 个答案:

答案 0 :(得分:2)

最简单的方法是使用JTextArea来显示文本。然后,您可以使用以下方法将文本加载到文本区域:

JTextArea textArea = new JTextArea(5, 20);
textArea.read(....);
JScrollPane scrollPane = new JScrollPane( textArea );

然后,您可以在GUI中显示滚动窗格。

当然,您需要先创建一个FileReader对象。查看API或搜索论坛,了解有关使用FileReader或BufferedReader的更多信息。

答案 1 :(得分:1)

解决这个问题的一般启发式方法对于大多数编程问题都是一样的:将问题分解为组成步骤并解决每个问题:

  • 获取包含文本的文件或资源
  • 尝试打开并阅读它。通过使用println来查看控制台中的文本来测试这是否有效。
  • 通过setText()将文本放入JTextArea,并定义行数和列数。
  • 将JTextArea放入JScrollPane
  • 将JScrollPane放入JOptionPane。

答案 2 :(得分:0)

尝试此代码,在此代码中,您可以从任何位置打开文件,并在JOptionPane中获取文件文本或内容。

try
    { 
    String filetext="",filecontent="";

    File file=new File("C:\\taqweresanshp.txt");
    FileReader fr=new FileReader(file);
    BufferedReader br=new BufferedReader(fr);
    StringBuilder sb=new StringBuilder();
    while(fr !=null)
    {
           filetext=br.readLine();
           sb.append(filetext);
           sb.append("\n");
    }
    filecontent=sb.toString();
    JOptionPane.showMessageDialog(null,"File is"+filecontent);

    }
    catch(Exception ex){}