为什么运行这个程序后点击保存,然后打开时不是按行输出的啊?哪里有问题?publicclassJSBJSB{publicstaticvoidmain(String[]args){FirstWindowwin=newFirstWindow("记事本");}}classF...
为什么运行这个程序后点击保存,然后打开时不是按行输出的啊?哪里有问题?
public class JSBJSB{
public static void main(String[] args) {
FirstWindow win=new FirstWindow("记事本");
}
}
class FirstWindow extends JFrame implements ActionListener{
private static final long serialVersionUID = 1L;
JMenuBar menubar;
JMenu menu2,menu1;
JMenuItem item1,item2,itema,itemb,itemc,itemd;
JTextArea showText;
JFileChooser fileChooser1,fileChooser2;
FirstWindow(String s){
fileChooser1=new JFileChooser("c;/");
fileChooser2=new JFileChooser("c;/");
setTitle(s);
setSize(750, 450);
setLocation(250,120);
setVisible(true);
menubar=new JMenuBar();
menu1=new JMenu("文件");
item1=new JMenuItem("打开");
item2=new JMenuItem("保存");
menu1.add(item1);
menu1.addSeparator();
menu1.add(item2);
menubar.add(menu1);
validate();
menu2=new JMenu("编辑");
itema=new JMenuItem("复制");
itemb=new JMenuItem("剪切");
itemc=new JMenuItem("粘贴");
itemd=new JMenuItem("全部选中");
menu2.add(itema);
menu2.addSeparator();
menu2.add(itemb);
menu2.addSeparator();
menu2.add(itemc);
menu2.addSeparator();
menu2.add(itemd);
menubar.add(menu2);
setJMenuBar(menubar);
validate();
showText=new JTextArea(12,12);
add(new JScrollPane(showText));
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
validate();
itema.addActionListener(this);
itemb.addActionListener(this);
itemc.addActionListener(this);
itemd.addActionListener(this);
item1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
int n=fileChooser1.showOpenDialog(null);
if(n==JFileChooser.APPROVE_OPTION){
File file=fileChooser1.getSelectedFile();
try{
FileReader readfile=new FileReader(file);
BufferedReader in=new BufferedReader(readfile);
String s=null;
while((s=in.readLine())!=null)showText.append(s+"\n");
}
catch(IOException ee){}
}
}
});
item2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
int n=fileChooser2.showSaveDialog(showText);
if(n==JFileChooser.APPROVE_OPTION){
File file=fileChooser2.getSelectedFile();
try{
FileWriter tofile=new FileWriter(file+".txt");
BufferedWriter out=new BufferedWriter(tofile);
out.write(showText.getText());
out.close();
}
catch(IOException ee){}
}
}
});
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==itema)
showText.copy();
if(e.getSource()==itemb)
showText.cut();
if(e.getSource()==itemc)
showText.paste();
if(e.getSource()==itemd)
showText.selectAll();
}}
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
展开