java,swing,awt,图形用户界面:怎么读取一个本地文本文件并将该文件内容在图形界面的文本区显示

2022-08-22 社会 103阅读

按照你的要求编写的Java图形界面读取文本文件的程序如下(注意注释中的提醒)

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class B extends JFrame implements ActionListener{
 String filename="D:\\tmp\\temp.txt";//这里写你准备好的文本文件的全路径名
 JTextArea jta=new JTextArea(5,3);
 JScrollPane jsp=new JScrollPane(jta);
 JButton jb=new JButton("读取文件");
 JPanel jp=new JPanel();
 B(){
  setTitle("读取文本文件");
  jb.addActionListener(this);
  jp.add(jb);
  add(jsp,BorderLayout.CENTER);
  add(jp,BorderLayout.SOUTH);
  setSize(300, 300);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setLocationRelativeTo(null);
  setVisible(true);
 }
 public static void main(String[] args) {
  new B();
 }
 @Override
 public void actionPerformed(ActionEvent e) {
  if(e.getSource()==jb){
   readFile(filename);
  }
 }
 public void readFile(String filename2){
  FileReader fr = null;
  BufferedReader br = null;
  try {
   fr= new FileReader(filename2);
   br=new BufferedReader(fr);
   String str;
   while((str=br.readLine())!=null){
     jta.append(str+"\n");
   }
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  } finally{
   try {
    br.close();
    fr.close();
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
 }
}

运行结果

文本文件 temp.txt的内容

天下一家
拥抱明天
永远的朋友

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com