⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 infomodel.java

📁 这是一个小型的学生信息管理系统
💻 JAVA
字号:

import java.io.*;
import java.util.*;
import java.text.*;
public class infomodel
{
	//说明学生信息系统的存储空间
	Student[] students;
	//说明当前学生的个数
	int numberofstudent ;
	//构造方法
	public infomodel()
	{
		 students =new Student[1000];
		 //实例化学生数组
		  numberofstudent=0;
		  //初始化学生个数
	}
	//插入一条新的学生记录
	public void insert(BufferedReader readStream)
	{
		String sno=null;
		//定义并初始化学生学号
		String name=null;
		//定义并初始化学生姓名
		String sex=null;
		//定义并初始化学生性别
		String department=null;
		//定义并初始化学生部门
		String enrollmentdate=null;
		//定义并初始化学生出生日期
		
		try
		{
			System.out.println("请输入学号:");
			sno=readStream.readLine ();
			//从键盘输入学号

		}
		catch (IOException e)
		{
			e.printStackTrace();
			//捕捉IO异常
		}
			students[numberofstudent++]=new Student(sno,name,sex,department,getdate(enrollmentdate));
	        //装载数组
	}
		//字符串yyyy-hh-dd到日期的转换
	public Date getdate(String date)
		{
		   StringTokenizer mydate=new StringTokenizer(date,"-");
		   int year =Integer.parseInt(mydate.nextToken());
		   int month = Integer.parseInt(mydate.nextToken());
			int day = Integer.parseInt(mydate.nextToken());
		   //把指定的年月日转化为日期整数

		   Calendar now =Calendar.getInstance();
		   now.clear();
		   now.set(year,month-1,day);
	         return now.getTime();
}
	
	//删除一条学生记录
	public void delete (BufferedReader readStream)
	
	{
		String sno=null;
		System.out.println("请输入学号:");
		try
			{
			sno=readStream.readLine();

			}
		catch (IOException e)
			{
				e.printStackTrace();
			}
		//开始删除
		for (int i=0;i<numberofstudent ;i++ )
		{
			if (students[i].getSno().equals(sno))
			{
				//通过前移操作实现删除
				for (int j=i;j<numberofstudent ; j++)
				{
					students[j]=students[j+1];
					//修正目前学生记录
					numberofstudent--;
					break;
				}
			 }
		}
	}
	//修改学生记录
      
	public void update (BufferedReader readStream)
		{

		String sno=null;
		System.out.println("请输入学号:");
		try
			{
			sno=readStream.readLine();

			}
		catch (IOException e)
			{
				e.printStackTrace();
			}
			for (int i=0;i<numberofstudent ;i++ )
		{
			if (students[i].getSno().equals(sno))
			{
				for (int j=i;j<=numberofstudent ; j++)
				{
					students[j]=students[i];
				}
			}
		}
				
	}
		//显示学生记录的方法
	public void query(BufferedReader readStream)
	{
		int flag=0;
		String sno = null;
		for (int i=0;i<numberofstudent ;i++ )
		{
			flag=1;
			System.out.println("请输入记录号"+(i=1));
			if(students[i].getSno().equals(sno))
			{		
				flag = 1;			
				System.out.println(students[i].getName());
				System.out.println(students[i].getSex());
				System.out.println(students[i].getDepartment());
				System.out.println(students[i].getEnrollmentDate());
			}	
			if (flag==0)
			{
				System.out.println("目前还没记录");
			}
		}
	}
	//批量装入学生记录的方法
	public void load ()
	{
		String sno=null;
		String name=null;
		String sex=null;
		String EnrollmentDate=null;
		String department=null;
		String in;
		//定义成员变量
		//从指定文件中读取学生信息
		try
		{
			
			BufferedReader infile = new BufferedReader(new FileReader("e:\\inf\\xuesheng.txt"));
			//建立键盘输入流
			while ((in=infile.readLine())!=null)
			{
				StringTokenizer str =new StringTokenizer(in,"1");
				
				 sno=str.nextToken();
				 name=str.nextToken();
				 sex=str.nextToken();
				 EnrollmentDate=str.nextToken();
				 department=str.nextToken();
				//依次获得学号,姓名,性别,出生年月日和所在院系名称
				students[numberofstudent++]=new Student(sno,name,sex,department,getdate(EnrollmentDate));
			//装载到数组
			}
		}
		catch (FileNotFoundException e)
		{
			e.printStackTrace();
		}
		catch  (IOException e)
		{
			System.out.println("I/O操作出现异常"); 
		}
	

	}

	//存储学生记录的方法
	public void  saveto()
	{
      try
		{
			BufferedWriter outfile = new BufferedWriter(new FileWriter("e:\\inf\\xuesheng.txt"));
			//建立文件输出流(writer)
			
			for (int i=0;i<numberofstudent;i++ )
			{
				outfile.write(students[i].getSno()+" ");
				outfile.write(students[i].getName()+" ");
				outfile.write(students[i].getSex()+" ");
				outfile.write(students[i].getDepartment()+" ");
				outfile.write(students[i].getEnrollmentDate()+" ");
				outfile.newLine();
                //开始写数据
			}
		outfile.close();
		//关闭流
		}
		catch (IOException e)
		{
			System.out.println("I/O操作出现异常"); 

		}


	}
	
}




































⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -