Java 学生管理系统(txt导入导出)

每个功能写在一个类里面。

 


import java.io.IOException;
import java.util.*;;

public class Main {
 static Scanner scanner = new Scanner(System.in);
 static Add1 a = new Add1();
 static Found f = new Found();
 static Revise r = new Revise();
 static Delete d = new Delete();
 public static void main(String[] args) throws IOException {
  System.out.println("   ***************");
  System.out.println("*欢迎来到学生管理系统 *\n");

  while(true) {
  System.out.println("1.信息添加");
  System.out.println("2.信息查看");
  System.out.println("3.信息修改");
  System.out.println("4.信息删除");
  System.out.println("5.退出系统");
  System.out.println("\n请输入你要进行的操作");
  int choice = scanner.nextInt();
  if(choice == 5) {
   System.out.println("欢迎再次使用!");
   break; 
  }
  
  switch (choice) {
   case 1: a.add();
    break;
   case 2: f.fw();
    break;
   case 3: r.revise();
    break;
   case 4: d.delete();
    break;
   }
   
  }

 }

}

 

/*添加信息----------------------------------------------------------------------------------------------------------*/

package Student;

import java.io.*;
import java.util.*;

public class Add1 {
 //public static Set set = new HashSet<String>();
 private String Number, Name, Sex;
 private int flag = 0;
 public void add() throws IOException {
  Scanner sc = new Scanner(System.in);
  while(true) {
  System.out.println("请输入:\n学号---姓名---性别");
  
     File file = new File("d:\\学生管理系统.txt");   //存放数组数据的文件 
     
  FileWriter out = new FileWriter(file,true);  //文件写入
  Number = sc.next();
  Name = sc.next();
  Sex = sc.next();
  out.write(Number+" "+Name+" "+Sex);
  out.write("\r\n");
  out.close();
  
  System.out.println("是否继续增加学生信息?1--是/0--否");
  flag = sc.nextInt();
  if(flag == 0) {
   System.out.println("增加完成!\n");
   break;
  }
  }
 }
}

 

/*查找信息-----------------------------------------------------------------------------------------------------------*/

package Student;

import java.io.*;
import java.util.Scanner;
public class Found {
 public void fw() {
  while(true) {
   System.out.println("请输入要查询学生信息的学号:");
   Scanner sc = new Scanner(System.in);
   String Number = sc.next();
   try {               
    
    /* 读入TXT文件 */ 
     String pathname = "D:/学生管理系统.txt";     
      File filename = new File(pathname);      
      InputStreamReader reader = new InputStreamReader(new FileInputStream(filename)); // 建立一个输入流对象reader 
      BufferedReader br = new BufferedReader(reader);          // 建立一个对象,它把文件内容转成计算机能读懂的语言 
      String line = ""; 
            line = br.readLine() ;
            int count1 = 0;
            while (line != null) { 
             String[] number = line.split(" ");
                if(number[0].equals(Number)) {
                 count1 = 1;
                 System.out.println(line); 
                }
                line = br.readLine();               // 一次读入一行数据 
               
            }
            if(count1 == 0) {
             System.out.println("学生系统中没有此人!");
            }
            System.out.println("是否继续查询?1--是/0--否\n");
            int flag = sc.nextInt();
            if(flag == 0) {
             reader.close();
             break;
            }
           
            } catch (Exception e) { 
                e.printStackTrace(); 
            }
  }
 }
}

 

/* 修改信息----------------------------------------------------------------------------------------------------------*/

package Student;

import java.io.*;
import java.util.Scanner;

public class Revise {
 public void revise() {
  while(true) {
   System.out.println("请输入要修改的学生学号:");
   Scanner sc = new Scanner(System.in);
   String Number1 = sc.next();
   try {               
   
      File filename = new File("D:/学生管理系统.txt");      
      InputStreamReader reader = new InputStreamReader(new FileInputStream(filename)); // 建立一个输入流对象reader 
      BufferedReader br = new BufferedReader(reader);
     
      File files = new File("d:\\学生管理系统.txt");   //存放数组数据的文件 
   FileWriter out = new FileWriter(files,true);  //文件写入
   String s = "",file = "";
   int count2 = 0;
         s = br.readLine();
         while(s != null) {
             String[] number1 = s.split(" ");
             if (number1[0].equals(Number1)) {
              System.out.println("请输入要修改成的学号、姓名、性别:");
              s = sc.next()+" "+sc.next()+" "+sc.next();               
              count2 = 1;
             }
             file += s + "\r\n";
                s = br.readLine();
         }
         FileWriter out1 = new FileWriter(files);  //文件写入
         out1.close();
         out.close();
         reader.close();
         if(count2 == 0) {
          System.out.println("学生系统中没有该生!");
         }
             System.out.println("是否继续修改?1--是/0--否");
             int flag = sc.nextInt();
             if(flag == 0) {
              System.out.println("修改成功");
              break;
             }
                    
            } catch (Exception e) { 
                e.printStackTrace(); 
            }
  }
 }
}

 

/*删除信息------------------------------------------------------------------------------------------------------------*/

public class Delete {
 public void delete() {
  while(true) {
   System.out.println("请输入要删除学生信息的学号:");
   Scanner sc = new Scanner(System.in);
   String Number1 = sc.next();
   try {               
   
      File filename = new File("D:/学生管理系统.txt");      
      InputStreamReader reader = new InputStreamReader(new FileInputStream(filename)); // 建立一个输入流对象reader 
      BufferedReader br = new BufferedReader(reader);
     
      File files = new File("d:\\学生管理系统.txt");   //存放数组数据的文件 
   FileWriter out = new FileWriter(files,true);  //文件写入
   String s = "",file = "";
         s = br.readLine();
         int count = 0;
         while(s != null) {
             String[] number1 = s.split(" ");
             if (!number1[0].equals(Number1)) {
               file += s + "\r\n";
             }else {
              count = 1;
             }
                s = br.readLine();
         }
         FileWriter out1 = new FileWriter(files);  //文件写入
         out1.write(file);
         out1.close();
         out.close();
         reader.close();
         if(count == 1) {
          System.out.println("学生系统中没有此人!");
         }
           System.out.println("是否继续删除?1--是/0--否");
              int flag = sc.nextInt();
              if(flag == 0) {
              System.out.println("删除完成!\n");
               break;
              }
        
           
            } catch (Exception e) { 
                e.printStackTrace(); 
            }
  }
 }
}

  • 6
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值