简单的文本编译器,可以通过弹出对话框打开文件,进行编写并保存文件。
代码
package Code.a; import java.io.*; import javax.swing.*; import java.awt.event.*; public class Editor implements ActionListener{ JFrame f; JTextArea ta; JScrollPane sp; JMenuBar menubar; JMenu menu; JMenuItem openItem,saveItem,closeItem,exitItem; FileReader fr; FileWriter fw; JFileChooser fc; File file; //构造界面,本类作为监听类; public Editor(){ f = new JFrame("简易文本编辑器"); ta = new JTextArea(); sp = new JScrollPane(ta);//滚轮 f.add(sp); menubar = new JMenuBar();//菜单栏 menu = new JMenu("File"); openItem = new JMenuItem("Open");//四个选项 saveItem = new JMenuItem("Save"); closeItem = new JMenuItem("Close"); exitItem = new JMenuItem("Exit"); menu.add(openItem); menu.add(saveItem); menu.add(closeItem); menu.add(exitItem); menubar.add(menu); f.setJMenuBar(menubar); f.setSize(400,300); f.setVisible(true); //四个选项事件函数; openItem.addActionListener(this); saveItem.addActionListener(this); closeItem.addActionListener(this); exitItem.addActionListener(this); } public void actionPerformed(ActionEvent e) { //异常 try { //点击打开选项时,弹出打开文件对话框; if(e.getActionCommand()=="Open") { fc = new JFileChooser(); if(fc.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { file = fc.getSelectedFile(); fr = new FileReader(file); int c; while((c = fr.read()) != -1) { ta.append(String.valueOf((char) c)); } fr.close(); } } //点击保存选项时,弹出保存文件对话框; else if(e.getActionCommand()=="Save") { String str = ta.getText(); fc = new JFileChooser(); if(fc.showSaveDialog(null) == JFileChooser.APPROVE_OPTION) { file = fc.getSelectedFile(); fw = new FileWriter(file); fw.write(str); fw.close(); } } //点击关闭选项时,清空文本框; else if(e.getActionCommand() == "Close") { ta.setText(""); } //点击退出选项时,退出当前界面; else if(e.getActionCommand() == "Exit") { System.exit(0); } } //处理异常; catch(IOException exp) { exp.printStackTrace(); } } public static void main(String[] args) { Editor e = new Editor(); } }
以上是Java语言实现文本编辑器的方法的详细内容。更多信息请关注PHP中文网其他相关文章!