java I/O流题目( 成绩文件处理)

设计学生类Student,属性:学号(整型);姓名(字符串),选修课程(名称)及课程成绩(整型)。编写一个控制台程序,能够实现Student信息的保存、读取。具体要求:(1)提供Student信息的保存功能:通过控制台输入若干个学生的学号、姓名以及每个学生所修课程的课程名和成绩,将其信息保存到data.dat中;(2)数据读取显示:能够从data.dat文件中读取学生及其课程成绩并显示于控制台。(要求,学号和课程成绩按照整数形式(而非字符串形式)存储)

package practice;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Scanner;

public class HIK {
//	设计学生类Student,属性:学号(整型);姓名(字符串),
//	选修课程(名称)及课程成绩(整型)。编写一个控制台程序,
//	能够实现Student信息的保存、读取。具体要求:
//	(1)提供Student信息的保存功能:
//	通过控制台输入若干个学生的学号、姓名以及每个学生所修课程的课程名和成绩,将其信息保存到data.dat中;
	
//	(2)数据读取显示:
//	能够从data.dat文件中读取学生及其课程成绩并显示于控制台。
//	(要求,学号和课程成绩按照整数形式(而非字符串形式)存储)
	public static void main(String[] args) throws IOException, ClassNotFoundException {
		// TODO 自动生成的方法存根
		Scanner scanner=new Scanner(System.in);
		int SnoInt=scanner.nextInt();
		String nameString=scanner.next();
		String subjectString=scanner.next();
		 int achievementInt=scanner.nextInt();
		 Student st1=new Student();
st1.setting(SnoInt,  nameString,subjectString, achievementInt);
FileOutputStream oout=new FileOutputStream("C:\\Users\\13300\\Desktop\\data.dat");
ObjectOutputStream oos1=new ObjectOutputStream(oout);
oos1.writeObject(st1);
oos1.flush();
oos1.close();
FileInputStream fos=new FileInputStream("C:\\Users\\13300\\Desktop\\data.dat");
ObjectInputStream oos=new ObjectInputStream(fos);
Student stui=(Student)oos.readObject();
System.out.println(stui.getSnoInt());
System.out.println(stui.getNameString());
System.out.println(stui.getSubjectString());
	System.out.println(stui.getAchievementInt());
	}
	}


class Student implements Serializable{
	private int SnoInt;
	private String nameString;
	private String subjectString;
	private int achievementInt;
	public void setting(int SnoInt, String nameString,String subjectString, int achievementInt) {
		this.SnoInt=SnoInt;
		this.nameString=nameString;
		this.subjectString=subjectString;
		this.achievementInt=achievementInt;
	}
	public int getSnoInt() {
		return SnoInt;
	}
	
	public String getNameString() {
		return nameString;
	}
	
	public String getSubjectString() {
		return subjectString;
	}
	
	public int getAchievementInt() {
		return achievementInt;
	}
	
	
	
}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gxbfeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值