java个人信息管理程序.docx_第1页
java个人信息管理程序.docx_第2页
java个人信息管理程序.docx_第3页
java个人信息管理程序.docx_第4页
java个人信息管理程序.docx_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

package jfghjp11;import java.io.* ;public class ExecDemo03public static void main(String args) throws Exceptionnew Menu() ;import java.io.File ;import java.io.FileInputStream ;import java.io.FileOutputStream ;import java.io.ObjectInputStream ;import java.io.ObjectOutputStream ;public class FileOperate/ 此类专门用于保存和读取private File file = null ;/ 定义文件对象public FileOperate(String pathName)/ 通过构造传递文件路径this.file = new File(pathName) ;public boolean save(Object obj) throws Exception/ 保存对象ObjectOutputStream oos = null ;/ 对象输出流boolean flag = false ;/ 定义操作标志位tryoos = new ObjectOutputStream(new FileOutputStream(this.file) ;/ 实例化对象输出流oos.writeObject(obj) ;/ 写入对象flag = true ;catch(Exception e)throw e ;/ 有异常交给被调用处处理finallyif(oos!=null)oos.close() ;return flag ;public Object load() throws Exception/ 读取对象Object obj = null ;/ 接收读取的内容ObjectInputStream ois = null ;tryois = new ObjectInputStream(new FileInputStream(this.file) ;/ 实例化对象输入流obj = ois.readObject() ;/ 读取对象catch(Exception e)throw e ;finallyif(ois!=null)ois.close() ;/ 关闭return obj ;import java.io.* ;import java.util.* ;import java.text.* ;public class InputDataprivate BufferedReader buf = null ;public InputData()/ 只要输入数据就要使用此语句this.buf = new BufferedReader(new InputStreamReader(System.in) ;public String getString(String info)/ 得到字符串信息String temp = null ;System.out.print(info) ;/ 打印提示信息trytemp = this.buf.readLine() ;/ 接收数据catch(IOException e)e.printStackTrace() ;return temp ;public int getInt(String info,String err)/ 得到一个整数的输入数据int temp = 0 ;String str = null ;boolean flag = true ;/ 定义一个标记位while(flag)str = this.getString(info) ;/ 接收数据if(str.matches(d+$)/ 判断是否由数字组成temp = Integer.parseInt(str) ;/ 转型flag = false ;/ 结束循环elseSystem.out.println(err) ;/ 打印错误信息return temp ;public float getFloat(String info,String err)/ 得到一个小数的输入数据float temp = 0 ;String str = null ;boolean flag = true ;/ 定义一个标记位while(flag)str = this.getString(info) ;/ 接收数据if(str.matches(d+.?d+$)/ 判断是否由数字组成temp = Float.parseFloat(str) ;/ 转型flag = false ;/ 结束循环elseSystem.out.println(err) ;/ 打印错误信息return temp ;public Date getDate(String info,String err)/ 得到一个小数的输入数据Date temp = null ;String str = null ;boolean flag = true ;/ 定义一个标记位while(flag)str = this.getString(info) ;/ 接收数据if(str.matches(d4-d2-d2$)/ 判断是否由数字组成SimpleDateFormat sdf = new SimpleDateFormat(yyyy-MM-dd) ;trytemp = sdf.parse(str) ;/ 将字符串变为Date型数据catch(Exception e)flag = false ;/ 结束循环elseSystem.out.println(err) ;/ 打印错误信息return temp ;public class Menupublic Menu()while(true)this.show() ;/ 无限制调用菜单的显示public void show()System.out.println(= Xxx系统 =) ;System.out.println( 1、增加数据) ;System.out.println( 2、删除数据) ;System.out.println( 3、修改数据) ;System.out.println( 4、查看数据) ;System.out.println( 0、系统退出n) ;InputData input = new InputData() ;int i = input.getInt(请选择:,请输入正确的选项!) ;switch(i)case 1:Operate.add() ;/ 调用增加操作break ;case 2:Operate.delete() ;/ 调用删除操作break ;case 3:Operate.update() ;/ 调用更新操作break ;case 4:Operate.find() ;/ 调用查看操作break ;case 0:System.exit(1) ;/ 系统退出break ;default:System.out.println(请选择正确的操作!) ;public class Operatepublic static void add()/ 增加操作InputData input = new InputData() ;/ 实例化输入数据对象FileOperate fo = new FileOperate(d:test.per) ;String name = input.getString(请输入姓名:) ;int age = input.getInt(请输入年龄: , 年龄必须是数字!) ;Person per = new Person(name,age) ;/ 实例化Person对象tryfo.save(per) ;/ 保存对象catch(Exception e)e.printStackTrace() ;System.out.println(信息增加成功!) ;public static void delete()/ 删除操作FileOperate fo = new FileOperate(d:test.per) ;tryfo.save(null) ;/ 保存对象catch(Exception e)e.printStackTrace() ;System.out.println(信息删除成功!) ;public static void update()/ 更新操作InputData input = new InputData() ;/ 实例化输入数据对象FileOperate fo = new FileOperate(d:test.per) ;Person per = null ;tryper = (Person)fo.load() ;/ 读取对象catch(Exception e)e.printStackTrace() ;String name = input.getString(请输入姓名(原姓名:+per.getName()+):) ;int age = input.getInt(请输入年龄(原年龄:+per.getAge()+): , 年龄必须是数字!) ;per = new Person(name,age) ;/ 实例化Person对象tryfo.save(per) ;/ 保存对象catch(Exception e)e.printStackTrace() ;System.out.println(信息修改成功!) ;public static void find()/ 查看操作FileOperate fo = new FileOperate(d:test.per) ;Person per = null ;tryper = (Person)fo.load() ;/ 读取对象catch(Exception e)e.printStackTrace() ;System.out.println(per) ;package jfghjp11;import java.io.Serializable ;public class Person implements Serializableprivate String name ;/ 定义name属性private int age ;/ 定义age属性public Person(String name,int age) = name; this.age = age ;public String toString()return 姓名: + + ;年

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论