定义员工类employee ,员工有姓名,年龄,工号属性, 员工有工做的方法, 键盘录入三组数据, 数据格式(姓名,年龄,工号) 例如:张三,23,9527; 经过数据,建立员工对象, 而后经过对

定义员工类employee ,员工有姓名,年龄,工号属性, 员工有工做的方法,
键盘录入三组数据, 数据格式(姓名,年龄,工号) 例如:张三,23,9527;
经过数据,建立员工对象, 而后经过对象流将三个对象储存到文本文件中;

最后读取文本文件中的对象,而后将对象的属性打印到控制台上;java

import java.io.BufferedReader;
import java.io.EOFException;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.Serializable;
import java.nio.channels.ScatteringByteChannel;
import java.util.ArrayList;

import org.omg.PortableInterceptor.INACTIVE;

public class Work02 {

	

	@SuppressWarnings("resource")
	public static void main(String[] args) throws Exception {
//		2.定义员工类employee ,员工有姓名,年龄,工号属性, 员工有工做的方法,
//		键盘录入三组数据, 数据格式(姓名,年龄,工号) 例如:张三,23,9527;
//		经过数据,建立员工对象, 而后经过对象流将三个对象储存到文本文件中;
//		最后读取文本文件中的对象,而后将对象的属性打印到控制台上;
		
		//writerDemo();//调用写入对象方法
		rederDemo();//调用读取对象方法
	}
   //读取对象类
	private static void rederDemo() throws IOException, FileNotFoundException, ClassNotFoundException {
		// 建立集合流输入流
		ObjectInputStream obr = new ObjectInputStream(new FileInputStream("2.txt"));
			//读取流
			Object ob = obr.readObject();
			//强转成集合类型的
			ArrayList<employee> arr=(ArrayList<employee>) ob;
			//用for加强来遍历集合
			for (employee em : arr) {
//				输入对象
				System.out.println(em);
			}
			obr.close();
	}
	//写入对象类
	private static void writerDemo() throws IOException, FileNotFoundException {
		// 建立字节标准输入流对象
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		//建立字节输出流对象
		ObjectOutputStream obw = new ObjectOutputStream(new FileOutputStream("2.txt"));
		// 建立employee类的集合
			ArrayList<employee> arr = new ArrayList<employee>();
//			定义计数器
			int a=1;
//			
			while(a<=3){
				System.out.println("请输入第"+a+"个学生的信息(数据格式(姓名,年龄,工号) 例如:张三,23,9527):");
//				读取一行
				String re = br.readLine();
//				吧他们从逗号分隔成Sting数组
				String[] sp = re.split(",");
//				集合用add方法添加匿名对象
				arr.add(new employee(sp[0], sp[1], sp[2]));
//				计数器累加
				a++;
			}
//			对象流添加集合
			obw.writeObject(arr);
//			关闭流
			br.close();
			obw.close();
	}

}

//定义一个 employee类,实现Serializable
class employee implements Serializable{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 2220530702725160473L;
	
	private String name;
	private String age;
	private String id;
	public void work(){
		System.out.println("好好工做");
	}
	@Override
	public String toString() {
		return "employee [name=" + name + ", age=" + age + ", id=" + id + "]";
	}
	public employee(String name, String age, String id) {
		super();
		this.name = name;
		this.age = age;
		this.id = id;
	}
	
}