AddressBookApp
import java.io.*;
import java.util.Scanner;
class AddressBookApp
{
private CAddressBook addressbook;
private Scanner scanner;
AddressBookApp() {
scanner = new Scanner(System.in);
scanner.useDelimiter(System.getProperty("line.separator"));
addressbook = new CAddressBook();
}
private void printMenu() {
System.out.println("=================================");
System.out.println(" 0. 주소록 파일 불러오기");
System.out.println(" 1. 주소 추가하기");
System.out.println(" 2. 주소록 파일 저장하기");
System.out.println(" 3. 주소록 다른 파일에 저장하기");
System.out.println(" 4. 종료하기");
System.out.println("=================================");
}
private int getChoice() {
System.out.print("메뉴의 번호를 입력하세요 : ");
while(!scanner.hasNextInt()) scanner.next();
return scanner.nextInt();
}
private String getFileName() {
System.out.print("주소록 파일 이름을 입력하세요 : ");
return scanner.next();
}
private String[] getAddress() {
String r[] = new String[3];
System.out.print("이 름 : ");
r[0] = scanner.next();
System.out.print("주 소 : ");
r[1] = scanner.next();
System.out.print("전화번호 : ");
r[2] = scanner.next();
return r;
}
private boolean doAction(int choice) {
switch(choice) {
case 0:
try {
addressbook.init(getFileName());
} catch (IOException e) {
e.printStackTrace();
System.exit(0);
}
break;
case 1:
String[] r = getAddress();
addressbook.add(r[0], r[1], r[2]);
break;
case 2:
addressbook.save();
break;
case 3:
addressbook.save(getFileName());
break;
case 4:
return false;
default:
break;
}
return true;
}
public void run() {
doAction(0);
do
{
printMenu();
}
while(doAction(getChoice()));
}
}
History
Last edited on 05/04/2007 11:44 by persona
Comments (0)