📜  java 文件阅读器 utf 8 - Java (1)

📅  最后修改于: 2023-12-03 15:31:33.930000             🧑  作者: Mango

Java 文件阅读器 utf 8 - Java

本文介绍一款java编写的文件阅读器,可以读取utf 8编码的文本文件。

功能
  • 打开文本文件
  • 读取文件内容
  • 显示文件内容
  • 支持utf-8编码
技术栈
  • Java
  • Swing GUI库
源代码
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
 
public class TextFileReader extends JFrame {
    private JTextArea textArea;
    private JFileChooser fileChooser;
 
    public TextFileReader() {
        super("Java 文件阅读器 utf 8");
 
        // 创建文本区域
        textArea = new JTextArea();
 
        // 创建文件选择器
        fileChooser = new JFileChooser();
        fileChooser.setDialogTitle("打开文本文件");
 
        // 添加菜单
        JMenuBar menuBar = new JMenuBar();
        JMenu fileMenu = new JMenu("文件");
        JMenuItem openMenuItem = new JMenuItem("打开");
 
        openMenuItem.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                int result = fileChooser.showOpenDialog(null);
                if (result == JFileChooser.APPROVE_OPTION) {
                    File selectedFile = fileChooser.getSelectedFile();
                    if (selectedFile.canRead()) {
                        // 读取文件内容
                        BufferedReader reader = null;
                        try {
                            reader = new BufferedReader(new FileReader(selectedFile));
                            String line = null;
                            while ((line = reader.readLine()) != null) {
                                textArea.append(line + "\n");
                            }
                        } catch (IOException ex) {
                            ex.printStackTrace();
                        } finally {
                            if (reader != null) {
                                try {
                                    reader.close();
                                } catch (IOException ex) {
                                    ex.printStackTrace();
                                }
                            }
                        }
                    }
                }
            }
        });
 
        fileMenu.add(openMenuItem);
        menuBar.add(fileMenu);
        setJMenuBar(menuBar);
 
        // 添加文本区域到窗口
        getContentPane().add(new JScrollPane(textArea), BorderLayout.CENTER);
 
        // 设置窗口大小
        setSize(400, 300);
 
        // 显示窗口
        setVisible(true);
 
        // 关闭窗口时退出程序
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
 
    // 入口方法
    public static void main(String[] args) {
        new TextFileReader();
    }
}
运行效果

运行效果截图

以上就是本文介绍的java文件阅读器,可以方便地打开并查看utf 8编码的文本文件。