第九章输入输出流 第5题作业

 

    没什么好说的,仿课本上的例子,简单易懂。

Code:
  1. package ch09;   
  2. //5、编写一个应用程序,要求将LinkedList<E>创建的对象写入到文件,然后读出一个LinkedList<E>对象,并遍历   
  3. //LinkedList<E>节点中的数据。   
  4. import java.io.FileInputStream;   
  5. import java.io.FileNotFoundException;   
  6. import java.io.FileOutputStream;   
  7. import java.io.IOException;   
  8. import java.io.ObjectInputStream;   
  9. import java.io.ObjectOutputStream;   
  10. import java.io.Serializable;   
  11. import java.util.Iterator;   
  12. import java.util.LinkedList;   
  13. //=======使用对象流写入或读出对象时,要保证对象时序列化的。==========   
  14. class Student implements Serializable{   
  15.     private static final long serialVersionUID = 1L;   
  16.     private int ID;        //学号   
  17.     private String name;   //姓名   
  18.     public Student(int ID,String name){   
  19.         this.ID=ID;   
  20.         this.name=name;   
  21.     }   
  22.     public int getID() {   
  23.         return ID;   
  24.     }   
  25.     public void setID(int id) {   
  26.         ID = id;   
  27.     }   
  28.     public String getName() {   
  29.         return name;   
  30.     }   
  31.     public void setName(String name) {   
  32.         this.name = name;   
  33.     }   
  34. }   
  35. public class Ch09_5 {   
  36.     public static void main(String[] args) {   
  37.         LinkedList<Student> students=new LinkedList<Student>();   
  38.         Student stu1=new Student(19,"李光地");   
  39.         Student stu2=new Student(34,"杨   龙");   
  40.         students.add(stu1);   
  41.         students.add(stu2);   
  42.            
  43.         try {   
  44.             //将对象写入sut.txt文件中。   
  45.             FileOutputStream fileOut=new FileOutputStream("stu.txt");          
  46.             ObjectOutputStream oos=new ObjectOutputStream(fileOut);        
  47.             oos.writeObject(students);   
  48.                
  49.             //将对象从stu.txt文件中读出。   
  50.             FileInputStream fileIn=new FileInputStream("stu.txt");   
  51.             ObjectInputStream ois=new ObjectInputStream(fileIn);   
  52.             LinkedList<Student> allStus=(LinkedList<Student>)ois.readObject();   
  53.                
  54.             //遍历对象,将节点的数据读出。   
  55.             Iterator<Student> iter=allStus.iterator();   
  56.             while(iter.hasNext()){   
  57.                 Student te=iter.next();   
  58.                 System.out.println("ID="+te.getID()+"/tname="+te.getName());   
  59.             }          
  60.         } catch (FileNotFoundException e) {   
  61.             e.printStackTrace();   
  62.         }catch (IOException e) {   
  63.             e.printStackTrace();   
  64.         } catch (ClassNotFoundException e) {   
  65.             e.printStackTrace();   
  66.         }   
  67.     }   
  68. }   

 

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值