用java创建一个包含增删改查的记事本程序
时间: 2023-05-23 17:05:17 浏览: 84
以下是用Java创建一个包含增删改查的记事本程序的一些代码示例:
1. 创建窗口和文本编辑区域
```
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MyEditor extends JFrame implements ActionListener {
private JTextArea textArea;
private JMenuBar menuBar;
private JMenu fileMenu, editMenu, helpMenu;
private JMenuItem newFile, openFile, saveFile, saveAsFile, exit, cut, copy, paste, selectAll, about;
public MyEditor() {
setTitle("MyEditor");
setSize(500, 500);
setDefaultCloseOperation(EXIT_ON_CLOSE);
textArea = new JTextArea();
JScrollPane scrollPane = new JScrollPane(textArea);
add(scrollPane, BorderLayout.CENTER);
menuBar = new JMenuBar();
fileMenu = new JMenu("File");
editMenu = new JMenu("Edit");
helpMenu = new JMenu("Help");
newFile = new JMenuItem("New");
newFile.addActionListener(this);
openFile = new JMenuItem("Open");
openFile.addActionListener(this);
saveFile = new JMenuItem("Save");
saveFile.addActionListener(this);
saveAsFile = new JMenuItem("Save As");
saveAsFile.addActionListener(this);
exit = new JMenuItem("Exit");
exit.addActionListener(this);
cut = new JMenuItem("Cut");
cut.addActionListener(this);
copy = new JMenuItem("Copy");
copy.addActionListener(this);
paste = new JMenuItem("Paste");
paste.addActionListener(this);
selectAll = new JMenuItem("Select All");
selectAll.addActionListener(this);
about = new JMenuItem("About");
about.addActionListener(this);
fileMenu.add(newFile);
fileMenu.add(openFile);
fileMenu.add(saveFile);
fileMenu.add(saveAsFile);
fileMenu.addSeparator();
fileMenu.add(exit);
editMenu.add(cut);
editMenu.add(copy);
editMenu.add(paste);
editMenu.add(selectAll);
helpMenu.add(about);
menuBar.add(fileMenu);
menuBar.add(editMenu);
menuBar.add(helpMenu);
setJMenuBar(menuBar);
}
}
```
2. 实现菜单栏动作
```
public void actionPerformed(ActionEvent e) {
if (e.getSource() == newFile) {
textArea.setText("");
} else if (e.getSource() == openFile) {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showOpenDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
try {
BufferedReader reader = new BufferedReader(new FileReader(selectedFile));
String line;
StringBuilder stringBuilder = new StringBuilder();
while ((line = reader.readLine()) != null) {
stringBuilder.append(line).append("\n");
}
reader.close();
textArea.setText(stringBuilder.toString());
} catch (IOException ex) {
ex.printStackTrace();
}
}
} else if (e.getSource() == saveFile) {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showSaveDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(selectedFile));
writer.write(textArea.getText());
writer.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
} else if (e.getSource() == saveAsFile) {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showSaveDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(selectedFile));
writer.write(textArea.getText());
writer.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
} else if (e.getSource() == exit) {
System.exit(0);
} else if (e.getSource() == cut) {
textArea.cut();
} else if (e.getSource() == copy) {
textArea.copy();
} else if (e.getSource() == paste) {
textArea.paste();
} else if (e.getSource() == selectAll) {
textArea.selectAll();
} else if (e.getSource() == about) {
JOptionPane.showMessageDialog(this, "This is a simple text editor.", "About", JOptionPane.INFORMATION_MESSAGE);
}
}
```
3. 运行程序
```
public static void main(String[] args) {
MyEditor editor = new MyEditor();
editor.setVisible(true);
}
```
这些代码示例可以帮助你创建一个简单的记事本程序。你可以根据你的需求对其进行扩展和修改。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)