用java写一个文本编辑器
时间: 2023-10-04 08:12:23 浏览: 162
当然,我可以帮你写一个简单的文本编辑器。以下是一个用Java编写的基本文本编辑器示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
public class TextEditor extends JFrame implements ActionListener {
private JTextArea textArea;
private JFileChooser fileChooser;
public TextEditor() {
setTitle("文本编辑器");
setSize(500, 400);
setDefaultCloseOperation(EXIT_ON_CLOSE);
textArea = new JTextArea();
JScrollPane scrollPane = new JScrollPane(textArea);
add(scrollPane, BorderLayout.CENTER);
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("文件");
JMenuItem openMenuItem = new JMenuItem("打开");
openMenuItem.addActionListener(this);
fileMenu.add(openMenuItem);
JMenuItem saveMenuItem = new JMenuItem("保存");
saveMenuItem.addActionListener(this);
fileMenu.add(saveMenuItem);
menuBar.add(fileMenu);
setJMenuBar(menuBar);
fileChooser = new JFileChooser();
setVisible(true);
}
public static void main(String[] args) {
new TextEditor();
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("打开")) {
int returnVal = fileChooser.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
openFile(file);
}
} else if (e.getActionCommand().equals("保存")) {
int returnVal = fileChooser.showSaveDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
saveFile(file);
}
}
}
private void openFile(File file) {
try {
BufferedReader reader = new BufferedReader(new FileReader(file));
textArea.setText("");
String line;
while ((line = reader.readLine()) != null) {
textArea.append(line + "\n");
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
private void saveFile(File file) {
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(textArea.getText());
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这个文本编辑器使用了Java的Swing库来创建GUI界面,并使用了文件选择器来打开和保存文件。通过菜单栏的"文件"菜单,你可以选择打开和保存文件。打开文件会将文件的内容显示到文本编辑器中,而保存文件会将文本编辑器中的内容保存到文件中。
请注意,这只是一个基本的示例,你可以根据自己的需求进行扩展和修改。希望对你有所帮助!
阅读全文