</pre><pre name="code" class="java">package com.hp.dhb;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
public class Dianhuaben {
static ArrayList<Xinxi> ziliao1=new ArrayList<Xinxi>();
static Scanner input =new Scanner(System.in);
public static void main(String[]args) throws IOException{
huoqu();
while(true){
System.out.println("请选择功能:");
System.out.println("1.添加 2.删除 3.修改 4.查看 5.全部查看 0.退出");
int gongneng=input.nextInt();
switch(gongneng){
case(0):{
cunchu();
System.exit(0);
};break;
case(1):add();break;
case(2):shuchu();break;
case(3):xiugai();break;
case(4):chakan();break;
case(5):qbck();break;
default:{
System.out.println("输入错误");
};break;
}
}
}
//获取文件已存信息
private static void huoqu() throws IOException {
// TODO Auto-generated method stub
File f1=new File("D:/dhb.txt");
if(!f1.exists()){
f1.createNewFile();
}
BufferedReader reader=null;
reader=new BufferedReader(new FileReader(f1));
String tempString=null;
int line=0;
while ((tempString = reader.readLine()) != null) {
// 显示行号
String[]sbuu=tempString.split(",");
Xinxi ziliao2=new Xinxi();
ziliao2.setXingming(sbuu[0]);
ziliao2.setXingbie(sbuu[1]);
ziliao2.setDianhua(sbuu[2]);
ziliao1.add(ziliao2);
System.out.println(ziliao2.toString());
line++;
}
System.out.println("共读取"+line+"条信息");
reader.close();
}
//向文件存储信息
private static void cunchu() throws IOException {
// TODO Auto-generated method stub
FileOutputStream fos=new FileOutputStream("D:/dhb.txt");
for(int i=0; i<ziliao1.size();i++){
String a=ziliao1.get(i).toto();
byte bytes[]=new byte[512];
bytes=a.getBytes(); //新加的.
int b=a.length(); //改
fos.write(bytes,0,b);
}
}
//增加
private static void add() {
// TODO Auto-generated method stub
System.out.println("请输入姓名");
String xingming1=input.next();
System.out.println("请输入性别");
String xingbie1=input.next();
System.out.println("请输入电话号码");
String dianhua1=input.next();
Xinxi ziliao=new Xinxi();
//ziliao.xingming=xingming1;
ziliao.setXingming(xingming1);
ziliao.setXingbie(xingbie1);
ziliao.setDianhua(dianhua1);
ziliao1.add(ziliao);
System.out.println(ziliao.toString());
}
//删除
private static void shuchu() {
// TODO Auto-generated method stub
System.out.println("请输入姓名");
String xingming2=input.next();
int a=chaxun(xingming2);
if(a==-1){
System.out.println("查无此人");
}else{
ziliao1.remove(a);}
}
//查询
private static int chaxun(String xingming2) {
// TODO Auto-generated method stub
int a = 0;
for(int i=0;i<ziliao1.size();i++){
if(ziliao1.get(i).getXingming().equals(xingming2)){
a = i;
break;
}
if(i==ziliao1.size()-1){
a = -1;
break;
}
}
return a;
}
private static void xiugai() {
// TODO Auto-generated method stub
System.out.println("请输入姓名");
String xingming2=input.next();
int a=chaxun(xingming2);
if(a==-1){
System.out.println("查无此人");
}else{ziliao1.remove(a);
System.out.println("请输入姓名");
String xingming1=input.next();
System.out.println("请输入性别");
String xingbie1=input.next();
System.out.println("请输入电话号码");
String dianhua1=input.next();
Xinxi ziliao=new Xinxi();
//ziliao.xingming=xingming1;
ziliao.setXingming(xingming1);
ziliao.setXingbie(xingbie1);
ziliao.setDianhua(dianhua1);
ziliao1.add(ziliao);
System.out.println(ziliao.toString());
}
}
private static void chakan() {
// TODO Auto-generated method stub
System.out.println("请输入姓名");
String xingming2=input.next();
int a=chaxun(xingming2);
if(a==-1){
System.out.println("查无此人");
}else{
Xinxi ziliao=new Xinxi();
ziliao=ziliao1.get(a);
System.out.println(ziliao.toString());
}
}
private static void qbck() {
// TODO Auto-generated method stub
for(int i=0;i<ziliao1.size();i++){
Xinxi ziliao=new Xinxi();
ziliao=ziliao1.get(i);
System.out.println(ziliao.toString());
}
}
}
以上为主程序。
package com.hp.dhb;
public class Xinxi {
private String xingming;
private String xingbie;
private String dianhua;
public String getXingming() {
return xingming;
}
public void setXingming(String xingming) {
this.xingming = xingming;
}
public String getXingbie() {
return xingbie;
}
public void setXingbie(String xingbie) {
this.xingbie = xingbie;
}
public String getDianhua() {
return dianhua;
}
public void setDianhua(String dianhua) {
this.dianhua = dianhua;
}
@Override
public String toString() {
return "Xinxi [姓名=" + xingming + ", 性别=" + xingbie
+ ", 电话=" + dianhua + "]";
}
public String toto(){
return xingming+","+xingbie+","+dianhua+"\r\n";
}
}