JAVA编程题目

有这样一个题目:

用输入/输出写一个程序,让用户输入一些姓名和电话号码。每一个姓名和号码将加在文件里。用户通过点“Done”按钮来告诉系统整个列表已输入完毕。如果用户输入完整个列表。程序将创建一个输入文件并显示或打印出来。格式如:555-1212,Tom 123-456-7890,Peggy L 234-5678,Marc 234-5678,Ron 876-4321,Beth&Brian 33.1.42.70,Jean-Marc。

来个能运行符合题意的源程序,谢谢!
////////////////////////////////////////////////////////
为了分的同志你们真是为了分才来到JAVA相关标签里吗,如果是这样的话,你们可以不答,没人强迫你们。对你们我真的没的语言了。半桶水还在这里装!
我想真为了提高自己,真为了与别人一起学习JAVA不会是这样的的。
////////////////////////////////////////////////////////

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class PhoneNumber extends JFrame{

JButton jbOk = new JButton(" O K ");
JButton jbDone = new JButton("Done");
JButton jbExit = new JButton("Exit");
JTextField jtName = new JTextField(15);
JTextField jtNumber = new JTextField(15);
ArrayList<String> alName = new ArrayList<String>();
ArrayList<String> alNumber = new ArrayList<String>();
public PhoneNumber(){
setTitle("输入输出演示");
setSize(270,150);
setLocation(400,400);
setLayout(new GridLayout(3,1));
JPanel pUp = new JPanel();
pUp.add(new JLabel("姓名:",JLabel.LEFT));
pUp.add(jtName);
JPanel pCenter= new JPanel();
pCenter.add(new JLabel("号码:",JLabel.LEFT));
pCenter.add(jtNumber);
JPanel pDown = new JPanel();
pDown.add(jbOk);
pDown.add(jbDone);
pDown.add(jbExit);
add(pUp);
add(pCenter);
add(pDown);

jbOk.addActionListener(new Ok());
jbDone.addActionListener(new Done());
jbExit.addActionListener(new Exit());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
private class Ok implements ActionListener{

public void actionPerformed(ActionEvent arg0) {
String name = jtName.getText();
String number = jtNumber.getText();
if(name.equals("")||number.equals("")){
JOptionPane.showMessageDialog(null,"信息不完整!");
}else{
alName.add(name);
alNumber.add(number);
jtName.setText("");
jtNumber.setText("");
}
}

}
private class Done implements ActionListener{

public void actionPerformed(ActionEvent arg0) {

if(alName!=null){
File f = new File("c:\\test.txt");
if(!f.exists()){
try {
f.createNewFile();
writeData();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

}else{
writeData();
}

}

}

}
public void writeData(){
try {
BufferedWriter br = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\test.txt",true)));
for(int i=0;i<alName.size();i++){
br.newLine();
br.write(alName.get(i)+","+alNumber.get(i));
br.newLine();
br.flush();
System.out.println(alName.get(i)+","+alNumber.get(i));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
private class Exit implements ActionListener{

public void actionPerformed(ActionEvent arg0) {
dispose();
}

}
public static void main(String[] args) {
new PhoneNumber();

}

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-07-07
分少了!!!!!
第2个回答  2008-07-07
你知道吗,你的问题的话多长时间呀,才十分,谁愿意干呀。
分少了!!!!
代码有的是.....