java通訊錄管理
❶ 用c++或java寫一個通訊錄管理系統
java
public class Person{
private Integer personId;
private String name;
private Sting number;
...
public void setPersonId(Integer personId){
this.personId=personId;
}
public Integer getPersonId(){
return this.personId;
}
...
❷ 求Java通訊錄管理程序,要編譯好的。要求數據存在文本文件中,功能包括聯系人管理(新增,刪除,修改
#include<stdio.h>/*I/O函數*/
#include<process.h>/*包含exit函數*/
#include<string.h>/*字元串函數*/
structperson/*定義一個結構體,結構體內元素為數組*/
{
charname[10];/*姓名*/
charnumber[15];/*學號*/
chartel[15];/*電話*/
charaddr[30];/*地址*/
};
charfilename[12];
FILE*fp;/*定義一個指針*/
voidcreat();/*創建一個通訊簿*/
voidoutput();/*輸出通訊錄中所含資料*/
voidappend();/*添加函數*/
voidsearch();/*查找函數*/
voidDelete();/*刪除函數*/
voidmodify();/*修改函數*/
/*以下是主函數*/
main()
{
intm;/*定義一個整數*/
creat();
while(1)/*括弧中為1代表無限循環*/
{
printf(" 添加同學地址,請按1");
printf(" 查找同學地址,請按2");
printf(" 修改同學地址,請按3");
printf(" 刪除原來地址,請按4");
printf(" 輸出所有地址,請按5");
printf(" 退出本通訊錄,請按0 ");
scanf("%d",&m);
if(m>=0&&m<=5)
{
switch(m)/*調用主菜單函數,返回值整數作開關語句的條件*/
{
case1:append();/*往通訊錄中添加*/
break;
case2:search();/*在通訊錄中查找*/
break;
case3:modify();/*修改通訊錄中資料*/
break;
case4:Delete();/*刪除通訊錄中資料*/
break;
case5:output();/*輸出通訊錄中所有名單*/
break;
case0:exit(0);/*退出運行程序*/
}
printf(" 操作完畢,請再次選擇!");
}
else
printf(" 選擇錯誤,請再次選擇!");
}
}
voidoutput()
{
structpersonone;
if((fp=fopen(filename,"r"))==NULL)/*用輸入打開一個文本文*/
{
printf(" 不能打開通訊簿!");
exit(0);
}
printf(" %12s ","通訊簿");
while(!feof(fp))/*檢驗fp所指文件是否結束,此為一個循環語句*/
{
fscanf(fp,"%s%s%s%s ",one.name,one.number,one.tel,one.addr);/*從fp所指文件中讀出數據*/printf(" %-10s%-15s%-15s%-30s ",one.name,one.number,one.tel,one.addr);/*輸出上面讀出數據*/
}
fclose(fp);/*關閉所指文件,釋放文件緩沖區,並返回值*/
}
/*****************添加函數*******************************/
voidappend()
{
structpersonone;
if((fp=fopen(filename,"a"))==NULL)/*向二進制文本尾追加數據*/
{
printf(" 不能打開通訊簿!");
exit(0);
}
printf(" 請輸入添加的姓名、電話號碼及住址 ");
❸ Java編寫一個簡單的通訊錄管理程序。通訊錄中需要存儲姓名,地址,電話號碼,郵政編碼四項
可以的,通訊就可以,歡迎咨詢學習
❹ Java編寫的通訊錄管理系統的源碼
For
your
question
Java通訊錄管理系統,
聯系我們需要提供問題和聯系方式,
有進一步需求,可以我們聯系,
有機會會幫你,
網路_Hi聯系我,
此回復針對所有來訪者和需求者有效,
ES:\\
❺ java個人通訊錄管理系統
import java.util.Arrays;
public class AddressBook
{
private int totalContacts; // 現在通訊錄中的總數
private int maxContacts; // 通訊錄的最大值
private Contact[] contacts; // 通訊錄的array
/**
* Constructor. 設定這個通訊錄最初的大小為10人上限.
*/
public AddressBook()
{
totalContacts = 0;
maxContacts = 10;
contacts = new Contact[totalContacts];
}
/**
* 得到一個聯系通過通訊錄中的名字
*
* @param name
* 要去得到的聯系人名字
* @return 這個聯系人, 沒有的話為null
*/
public Contact getContactByName(String name)
{
for(int i = 0; i < totalContacts; i++)
{
Contact c = contacts[i];
if(name.equals(c.getName()))
{
return c;
}
}
return null;
}
/**
* 在這個contacts array的最後給這個通訊錄添加聯系人.
* 如果聯系人已經存在且號碼參數不為0的話,聯系人的號碼會更新或者地址參數不是null的話,地址會更新。.
* 如果totalContacts達到maxContacts的值的話,在新的聯系人被添加前,這個contacts
* array的size會乘以雙倍並且maxContacts也乘以雙倍。
*
* @param contact
* 要加到這個通訊錄的聯系人
* @return true 如果這個聯系人添加成功, 否則 false;
*/
public boolean addContact(Contact contact)
{
for(int i = 0; i < contacts.length; i++)
{
Contact ct = contacts[i];
if(ct.equals(contact))
{
if(ct.getNumber() != 0)
{
ct.setNumber(contact.getNumber());
}
if(null != ct.getAddress())
{
ct.setAddress(contact.getAddress());
}
return true;
}
}
if(totalContacts == maxContacts)
{
totalContacts *= 2;
maxContacts *= 2;
}
Contact[] cs = new Contact[totalContacts + 1];
System.array(contacts, 0, cs, 0, totalContacts);
cs[cs.length - 1] = contact;
contacts = cs;
totalContacts++;
return true;
}
/**
* 檢查是否聯系人已經存在
*
* @param contact
* 要去檢查的contact
* @return true 如果這個聯系人被找到,否則false
*/
public boolean contains(Contact contact)
{
for(int i = 0; i < totalContacts; i++)
{
if(contacts[i].equals(contact))
{
return true;
}
}
return false;
}
public void printAddressBook()
{
for(int i = 0; i < totalContacts; i++)
{
System.out.println(contacts[i]);
}
}
/**
* 在AddressBook中還有一個方法!
* 從通訊錄中移除一個指定的聯系人,之後把其他的入口左移,這樣在聯系人間就沒有空隙了,
* For example:
* before -> {C1, C2, C3, C4, C5, C6, C7, C8, C9, null} remove C6
* after -> {C1, C2, C3, C4, C5, C7, C8, C9, null, null}
*
* @param contact
* 要移除的聯系人,
* @return true 如果這個聯系人被成功移除了,否則false;
*/
public boolean removeContact(Contact contact)
{
if(totalContacts == 0)
{
return false;
}
for(int i = 0; i < totalContacts; i++)
{
Contact ct = contacts[i];
if(ct.equals(contact))
{
Contact[] cs = new Contact[totalContacts];
System.array(contacts, 0, cs, 0, i);
System.array(contacts, i + 1, cs, i, cs.length - i - 1);
contacts = cs;
totalContacts--;
return true;
}
}
return false;
}
@Override
public String toString()
{
return String.format("AddressBook [totalContacts=%s, maxContacts=%s, contacts=%s]", totalContacts, maxContacts,
Arrays.toString(contacts));
}
}
//--------------------------------------------------
public class Contact
{
private String name;
private long number;
private String address;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public long getNumber()
{
return number;
}
public void setNumber(long number)
{
this.number = number;
}
public String getAddress()
{
return address;
}
public void setAddress(String address)
{
this.address = address;
}
@Override
public boolean equals(Object obj)
{
if(!(obj instanceof Contact))
{
return false;
}
Contact contact = (Contact) obj;
if(this.getName().equals(contact.getName())
&&
this.getAddress().equals(contact.getAddress())
&&
this.getNumber() == contact.getNumber())
{
return true;
}
return false;
}
@Override
public String toString()
{
return String.format("Contact [name=%s, number=%s, address=%s]", name, number, address);
}
}
//---------------------------------------------
public class Test
{
public static void main(String[] args)
{
AddressBook ab = new AddressBook();
for(int i = 0; i < 10; i++)
{
Contact contact = new Contact();
int x = i + 1;
contact.setName("C" + x);
contact.setAddress("china");
contact.setNumber(x);
ab.addContact(contact);
}
System.out.println(ab);
Contact c = new Contact();
c.setName("C6");
c.setAddress("china");
c.setNumber(6);
ab.removeContact(c);
System.out.println(ab);
}
}
❻ java通訊錄管理
大致寫了一下,你可以看看:
packagenoteBook;
importjava.awt.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.MouseEvent;
importjava.awt.event.MouseListener;
importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileNotFoundException;
importjava.io.FileReader;
importjava.io.IOException;
importjava.io.PrintWriter;
importjava.util.ArrayList;
importjava.util.StringTokenizer;
importjava.util.Vector;
importjavax.swing.*;
importjavax.swing.table.DefaultTableModel;
{
JMenuBarjmb;
JMenutext;
JMenuedit;
JMenuhelp;
JMenuItemsave;
JMenuItemchange;
JMenuItemguide;
JLabelname;
JLabeladdress;
JLabelpost;
JLabelmobilePhone;
JLabelemail;
JTextFieldJT_name;
JTextFieldJT_address;
JTextFieldJT_post;
JTextFieldJT_mobilePhone;
JTextFieldJT_email;
JButtonjOk;
JButtonjCancel;
JTabletable;
staticDefaultTableModeldtm;
Vector<String>head;
introw=0;//用於標記當前行的位置
publicguiView(){
super("通訊錄管理程序");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(600,700);
setVisible(true);
Containercon=this.getContentPane();
jmb=newJMenuBar();
this.setJMenuBar(jmb);
text=newJMenu("文件",true);
edit=newJMenu("編輯",true);
help=newJMenu("幫助",true);
save=newJMenuItem("保存");
change=newJMenuItem("修改");
guide=newJMenuItem("指導");
save.addActionListener(this);save.setActionCommand("save");
change.addActionListener(this);change.setActionCommand("change");
guide.addActionListener(this);guide.setActionCommand("guide");
text.add(save);edit.add(change);help.add(guide);
jmb.add(text);jmb.add(edit);jmb.add(help);
name=newJLabel("姓名:",Label.RIGHT);
address=newJLabel("通信地址:",Label.RIGHT);
post=newJLabel("郵編:",Label.RIGHT);
mobilePhone=newJLabel("行動電話:",Label.RIGHT);
email=newJLabel("電子郵件:",Label.RIGHT);
JT_name=newJTextField(12);
JT_address=newJTextField(28);
JT_post=newJTextField(12);
JT_mobilePhone=newJTextField(12);
JT_email=newJTextField(12);
jOk=newJButton("確定");
jCancel=newJButton("取消");
jOk.addActionListener(this);
jOk.setActionCommand("ok");
jCancel.addActionListener(this);
jCancel.setActionCommand("cancel");
JPanelpanelSOUTH=newJPanel();
JPanelpanelCENTER=newJPanel();
JPanelpanelCENTERSouth=newJPanel();
JPanelpanelCENTERCenter=newJPanel();
JPanelpanelCENTERNorth=newJPanel();
JPanelpanelNorth=newJPanel();
JPanelpanelNorthSouth=newJPanel();
head=newVector<String>();
head.addElement("姓名");
head.addElement("通信地址");
head.addElement("郵編");
head.addElement("行動電話");
head.addElement("電子郵件");
dtm=newDefaultTableModel(null,head);
showData();
table=newJTable(dtm);
table.addMouseListener(newMouseListener(){
publicvoidmouseClicked(MouseEvente){
row=table.getSelectedRow();
System.out.println(row);
getData(row);
}
publicvoidmouseEntered(MouseEvente){
}
publicvoidmouseExited(MouseEvente){
}
publicvoidmousePressed(MouseEvente){
}
publicvoidmouseReleased(MouseEvente){
}
});
JScrollPanejsp=newJScrollPane(table);
panelNorthSouth.setLayout(newGridLayout(1,5));
panelNorthSouth.add(name);
panelNorthSouth.add(address);
panelNorthSouth.add(post);
panelNorthSouth.add(mobilePhone);
panelNorthSouth.add(email);
panelNorth.setLayout(newBorderLayout());
panelNorth.add(jsp,BorderLayout.CENTER);
panelNorth.add(panelNorthSouth,BorderLayout.SOUTH);
panelCENTERNorth.add(name);
panelCENTERNorth.add(JT_name);
panelCENTERNorth.add(email);
panelCENTERNorth.add(JT_email);
panelCENTERCenter.add(post);
panelCENTERCenter.add(JT_post);
panelCENTERCenter.add(mobilePhone);
panelCENTERCenter.add(JT_mobilePhone);
panelCENTERSouth.add(address);
panelCENTERSouth.add(JT_address);
panelCENTER.add(panelCENTERNorth,BorderLayout.NORTH);
panelCENTER.add(panelCENTERCenter,BorderLayout.CENTER);
panelCENTER.add(panelCENTERSouth,BorderLayout.SOUTH);
panelSOUTH.add(jOk);
panelSOUTH.add(jCancel);
con.add(panelNorth,BorderLayout.NORTH);
con.add(panelCENTER,BorderLayout.CENTER);
con.add(panelSOUTH,BorderLayout.SOUTH);
}
//對點擊首行,上一行,下一行,最後一行按鈕觸發的操作進行事件響應處理
publicvoidactionPerformed(ActionEvente){
Stringcommand=e.getActionCommand();
if(command.equals("ok")){
Stringname=this.JT_name.getText();
Stringaddress=this.JT_address.getText();
Stringpost=this.JT_post.getText();
StringmobilePhone=this.JT_mobilePhone.getText();
Stringemail=this.JT_email.getText();
saveData(name,address,post,mobilePhone,email);
showData();
table.setModel(dtm);
this.JT_name.setText("");
this.JT_address.setText("");
this.JT_post.setText("");
this.JT_mobilePhone.setText("");
this.JT_email.setText("");
}
elseif(command.equals("cancel")){
this.JT_name.setText("");
this.JT_address.setText("");
this.JT_post.setText("");
this.JT_mobilePhone.setText("");
this.JT_email.setText("");
}
elseif(command.equals("save")){
//savealldatainthetable
}
elseif(command.equals("change")){
//tableallowtochangesomedata
}
elseif(command.equals("guide")){
//maybeshowhowtouseit
}
else{
System.err.println("error!");
System.exit(-1);
}
}
privatevoidshowData(){
dtm=newDefaultTableModel(null,head);
Filefile=newFile("F:/java/data.txt");
Stringstr=null;
BufferedReaderbr=null;
try{
br=newBufferedReader(newFileReader(file));
str=br.readLine();
while(str!=null){
if(str==null){
System.err.println("nodata!");
break;
}else{
StringTokenizerst=newStringTokenizer(str,",");//每行信息的6個欄位分別用空格隔開的
Vector<String>v=newVector<String>();
v.addElement(st.nextToken());
v.addElement(st.nextToken());
v.addElement(st.nextToken());
v.addElement(st.nextToken());
v.addElement(st.nextToken());
dtm.addRow(v);
}
str=br.readLine();
}
br.close();//一定要關閉資源
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}
}
privatevoidsaveData(Stringname,Stringaddress,Stringpost,
StringmobilePhone,Stringemail){
Filefile=newFile("F:/java/data.txt");
ArrayListlist=null;
try{
BufferedReaderbr=newBufferedReader(newFileReader(file));
list=newArrayList();
Stringss="";
while((ss=br.readLine())!=null)
list.add(ss);
br.close();
}catch(Exceptione){
e.printStackTrace();
}
list.set(row,name+","+address+","+post+","+mobilePhone
+","+email);
try{
PrintWriterpw=newPrintWriter(file);
for(inti=0;i<list.size();i++){
pw.println(list.get(i));
}
list.clear();
list=null;
pw.close();
}catch(FileNotFoundExceptione){
e.printStackTrace();
}
}
//通過flag標記當前讀到了文件的第幾行。然後循環讀至該行
privatevoidgetData(introw){
Filefile=newFile("F:/java/data.txt");
Stringstr=null;
StringTokenizerst;
BufferedReaderbr=null;
try{
br=newBufferedReader(newFileReader(file));
for(inti=0;i<=row;i++){
str=br.readLine();
}
if(str==null){
System.err.println("nodata!");
}else{
st=newStringTokenizer(str,",");//每行信息的6個欄位分別用空格隔開的
this.JT_name.setText(st.nextToken());
this.JT_address.setText(st.nextToken());
this.JT_post.setText(st.nextToken());
this.JT_mobilePhone.setText(st.nextToken());
this.JT_email.setText(st.nextToken());
}
br.close();//一定要關閉資源
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}
}
publicstaticvoidmain(String[]s){
guiViewc=newguiView();
c.setVisible(true);
}
}
❼ 用javaweb做一個通訊錄管理系統 添加聯系人和查詢用戶應該怎麼寫
通訊錄管理系統,感覺可以使用網頁建設界面,然後使用mysql保存信息,添加和查詢其實只需要創建一張表就夠了,你首先要做的就是把javaweb的框架搭起來
❽ 編寫一個JAVA程序實現個人通訊錄管理
這個太簡單了,你問的是程序編制要點,那麼我就告訴你:
1.分析程序
2.制定計劃
3.編寫代碼
4.測試
關於你說的用java編寫個人通訊錄管理程序,這個程序代碼
這本書有原代碼,你自己可以看下