很菜!刚抄的一个程序,错误很多,但我不知道是怎么回事,帮帮忙!
import java.awt.*;
import java.io.*;
import java.awt.datatransfer.*;
import java.awt.event.*;public class JiShi extends Frame implements ActionListener{
TextArea text=new TextArea();
MenuBar m=new MenuBar(); Menu m1=new Menu("文件");
MenuItem m11=new MenuItem("新建");
MenuItem m12=new MenuItem("打开");
MenuItem m13=new MenuItem("保存");
MenuItem m14=new MenuItem("另存为");
MenuItem m15=new MenuItem("退出"); Menu m2=new Menu("编辑");
MenuItem m21=new MenuItem("全选");
MenuItem m22=new MenuItem("复制");
MenuItem m23=new MenuItem("剪切");
MenuItem m24=new MenuItem("粘贴"); Toolkit toolkit=Toolkit.getDefaultToolkit();
ClipBoard clipbord=Toolkit.getSystemClipBoard(); FileDialog open=new FileDialog(this,"打开文件",FileDialog.LOAD);
FileDialog open=new FileDialog(this,"保存文件",FileDialog.SAVE);

public JiShi(){
setTitle("记事本");
setFont(new Font("Time New Roman",Font.PLAIN),12);
setBackGround(Color.White);
setMenuBar("m");
add(text); m1.add(m11);
m1.add(m12);
m1.add(m13);
m1.add(m14);
m1.add(m15);
m.add(m1); m2.add(m21);
m2.add(m22);
m2.add(m23);
m2.add(m24);
m.add(m2); addWindowListener(new WindowAdapt(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});

//注册监听器
m11.addAcitionListener(this);
m12.addAcitionListener(this);
m13.addAcitionListener(this);
m14.addAcitionListener(this);
m15.addAcitionListener(this);
m21.addAcitionListener(this);
m22.addAcitionListener(this);
m23.addAcitionListener(this);
m24.addAcitionListener(this);
        }
public void actionPerformed(ActionEvent e){
if(e.getSource()==m11)
text.setText(" ");
else if(e.getSource()==m12){
open.show();
filename=open.getDirectory()+open.getFile();
if(filename!=null)
openFile(filename);
}
else if(e.getSource()==m13){
if(filename==null){
save.show();
filename=save.getDirectory()+open.getfile();
}
if(filename!=null)
saveFile(filename);
}

else if(e.getSource()==m14){
save.show();
filename=open.getdirectory()+open.getfile();
if(filename!=null)
saveFile(filename);
}
else if(e.getsource()==m15)
System.exit(0);
else if(e.getSource()==m21)
text.selectAll();
else if(e.getSource()==m22){
String s=new String();
s=text.getSelectText();
StringSelect selection=new StringSelect(s);
clipboard.setContents(selection,null);
}
else if(e.getSource()==m23){
String s=new String();
s=text.getSelectText();
StringSelect selection=new StringSelect(s);
clipboard.setContents(selection,null);
text.replaceRange("",text.getSelectStart(),text.getSelectEnd());
}
else if(e.getSource()==m24){
Transferable contents=clipboard.getcontents(this);
if(contents==null)
return;
String s=new String();
try{
s=(String)contents.getTransferData(DataFlavor.StringFlavor);
}
catch(Exception e)
{
}
text.replaceRange(s,text.getSelectStart(),text.getSelectStart());
}
}
public void openFile(String filename){
try{ File file=new File(filename);
FileReader rd=new FileReader(file);
//把文件中的内容存入字符数组,数组的长度等于文件的长度
size=(int)file.length();
char[] data=new char[size];
int i=0;
while (rd.ready())
i+=rd.read(data,i,size);
text.setText(data,0,size);
rd.close();
}
catch(IOException ioe){

}
}

public void saveFile(String filename){
try{
file file=new File(filename);
FileWrite out=new FileWrite(file);
String s=new String();
s=text.getText();
out.write(s); 
out.close();
}
catch(IOException ioe){

}
}

public static void main(String[] s)
        {
JiShi f=new JiShi();

}
}