用java创建一个文档管理器
时间: 2023-05-24 19:04:08 浏览: 46
A:可以使用Java的Swing GUI框架来创建一个文档管理器。以下是一个简单的示例:
```java
import javax.swing.*;
import java.awt.*;
import java.io.*;
public class DocumentManager extends JFrame {
private JTextArea textArea;
public DocumentManager() {
// 设置窗口标题
setTitle("文档管理器");
// 设置窗口大小
setSize(500, 500);
// 设置窗口居中
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((screenSize.width - getWidth()) / 2, (screenSize.height - getHeight()) / 2);
// 设置菜单栏
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu fileMenu = new JMenu("文件");
menuBar.add(fileMenu);
JMenuItem openMenuItem = new JMenuItem("打开");
openMenuItem.addActionListener(e -> openFile());
fileMenu.add(openMenuItem);
JMenuItem saveMenuItem = new JMenuItem("保存");
saveMenuItem.addActionListener(e -> saveFile());
fileMenu.add(saveMenuItem);
// 添加文本区域
textArea = new JTextArea();
JScrollPane scrollPane = new JScrollPane(textArea);
add(scrollPane);
}
private void openFile() {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showOpenDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
try {
BufferedReader reader = new BufferedReader(new FileReader(file));
StringBuilder sb = new StringBuilder();
String line = reader.readLine();
while (line != null) {
sb.append(line).append("\n");
line = reader.readLine();
}
reader.close();
textArea.setText(sb.toString());
} catch (IOException e) {
e.printStackTrace();
}
}
}
private void saveFile() {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showSaveDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(textArea.getText());
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
DocumentManager documentManager = new DocumentManager();
documentManager.setVisible(true);
documentManager.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
```
该文档管理器具有打开和保存功能,可以打开和保存纯文本文件。您可以根据需要扩展它以实现更多功能。