Java暑期学习第五十三天日报

一、今日学习内容:

今天练习实验八的内容。

二、遇到的问题:

三、明日计划:

明天继续练习实验八的习题。

 

今日练习的具体内容如下:

 

1.结构体数据的二进制文件写入

【问题描述】

定义描述的教师的结构体,依次包含如下属性,工号(int型),姓名(string型),性别(char型),用户输入整数N,描述需要输入教师信息的个数,之后依次输入教师信息,并将教师信息写入工程目录下teacher.dat文件中,以二进制的形式写入

【输入形式】

N值

第1个教师的工号 姓名 性别

第2个教师的工号 姓名 性别

。。。

第N个教师的工号 姓名 性别

【输出形式】

teacher.dat文件,N个教师信息,二进制形式

import java.io.IOException;
import java.io.FileWriter;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.Scanner;
public class Teacher {
    private int ID;
    private String name;
    private int sex;
    public void setvalue(int a,String n,int s) {
        ID=a;
        n=name;
        sex=s;
    }
    public void main(String []args) throws IOException {
        
        System.out.println("请输入教师的数量:");
        Scanner sc=new Scanner(System.in);
        int N=sc.nextInt();
        Teacher []t=new Teacher[N];
        FileWriter fw=new FileWriter("D:\\teacher.dat");
        
        for(int i=0;i<N;i++) {
        System.out.println("请输入教师的工号、姓名、性别:");
            Scanner sc1=new Scanner(System.in);
            int id1=sc.nextInt();
            String na1=sc.nextLine();
            int sex1=sc.nextInt();
            t[i].setvalue(id1, na1, sex1);
            fw.write(t[i].name,t[i].ID,t[i].sex);
        }
        fw.close();
        FileReader fr=new FileReader("D:\\\\teacher.dat");
        BufferedReader br=new BufferedReader(fr);
        String s=br.readLine();
        System.out.println("信息如下:"+s);
        fr.close();
    }

}

 

 

测试截图:

 

posted on 2020-08-27 21:38  桑榆非晚柠月如风  阅读(108)  评论(0编辑  收藏  举报