IMG-LOGO
Trang Chủ Java Advanced Share Code - Hướng dẫn chữa bài quản lý sinh vien + file
×

Lý Thuyết

01. exception + debug + package - lập trình Java Nâng Cao 02. Tìm hiểu collections, Sets, Maps và Generic - lập trình java nâng cao 03. Hướng dẫn đọc ghi file FileInputStream, FileOutputStream, ObjectInputStream trong java - lập trình java nâng cao BT01. chua bai tap ObjectOutputStream & ObjectInputStream - lập trình java nâng cao 04. Tìm hiểu Thread - Phân 1 - lập trình java nâng cao 05. Tìm hiểu Thread trong Java - Phần 2 - lập trình java nâng cao 06. Tìm hiểu Thread trong java - Phần 3- lập trình java nâng cao BT02. Chữa bài tập Thread - Lập trình Java 07. Đông bộ thread + wait notify + synchronized + Lập trình Java - lập trình java nâng cao 08. Giải thích synchronized + Lap trinh Java nang cao BT03. Chữa bài tập hiển thị đồng bộ Thông tin tên & địa chỉ trên 2 thread khác nhau - java- lập trình java nâng cao BT04. chữa bài tập quản lý bán vé máy bay - java nâng cao 09. Kết nối MySQL trong java swing JDBC trong java - lập trình java nâng cao 10. Kết nối CSDL bằng java swing phần 2 - lập trình java nâng cao 11. Design Pattern lập trình java nâng cao - lập trình java nâng cao BT05. Bài tập quản lý sở thú - Phần 1 - lập trình java nâng cao BT06. Bài tập quản lý sở thú - Phần 2 - lập trình java nâng cao BT07. Hướng dẫn chữa bài tập JDBC - quản lý sinh viên - lập trình java nâng cao BT08. Quản lý sản phẩm + 2 bảng danh mục & sản phẩm + Lập trình java nâng cao BT09. Ứng dụng quản lý sinh viên - nhập dữ liệu từ file json - java nâng cao 12. Chuyển đổi json sang object java (sử dụng thư viện gson) - lập trình java nâng cao BT10. Lập trình java nâng cao - chữa bài tập tổng quát 181

Bài Tập

Java Advanced- BT18 Quản lý thông tin sinh & lưu file (ObjectOutputStream & ObjectInputStream) Java Advanced- Bài tập ôn luyện String, StringBuilder, StringBuffer Java Advanced- Chương trình quản lý sinh viên bằng HashMap File - Quản lý thông tin sinh viên Bài tập nén File & giải nén File & Liệt kê files trong 1 thư mục - winrar - winzip Bài tập quản lý sách & lưu thông tin trên Files Thread thực hiện in ngẫu nhiên các số nguyên và ký tự MultiThread - Sinh số ngẫu nhiên và hiển thị bình phương số ngẫu nhiên & Synchronized trong Java MultiThread - Synchronized trong Java - Đồng bộ 3 threads - Sinh số ngẫu nhiên, bình phương, và chia hết Tao tác dữ liệu lên Shared Object sử dụng MultiThreading trong java Sử dụng MultiThreading sinh ký tự a-zA-Z trong java Bài tập quản lý sinh viên bằng Java Swing + File Bài Tập Quản Lý Sinh Viên - CSDL - Java Swing Tạo tài liệu XML/JSON - quản lý lớp học Viết chương trình phân tích tài liệu XML thông tin cá nhân bằng Java Quản lý thông tin cá nhân Profile bằng java - import + export XML File Tạo JSON file & đọc nội dung JSON file thông tin cá nhân bằng Java Tìm mảng a2 kết hợp mảng a1 tạo mảng a là các phân tử liên tiếp nhau Phần mềm quản lý sinh viên MySQL + Java - Chương trình quản lý sinh viên MySQL + Java - Lập Trình Java Bài tập - Viết chương trình quản lý sản phẩm - quản lý tin tức - quản lý bán hàng - Lập trình Java

Examination & Test

Examination & Test >> Quản lý bán hàng + java console Examination & Test >> Quản lý bán hàng + java swing Examination & Test + Quản lý sinh viên + kiểm tra 60 phút Quản lý sinh viên + XML + JSON + MySQL bằng Java Mini Project - Phân tích dự án + Phát triển phần mềm ATM Quản lý sách bằng Java - Lập trình Java [Share Code] Tìm hiểu về Generic & FileInputStream & FileOutputStream - Lập trình java nâng cao. [Examination] XML/JSON - T2008A




Share Code - Hướng dẫn chữa bài quản lý sinh vien + file

by GokiSoft.com - 15:02 25/03/2020 2,033 Lượt Xem

Hướng dẫn chữa bài quản lý sinh vien + file

Link Bài Tập


Sour code


/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package java2.lession3.files;

import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Diep.Tran
 */
public class Main {
    static Scanner input = new Scanner(System.in);
    
    public static void main(String[] args) {
        List<Student> studentList = new ArrayList<>();
        int choose;
        
        do {
            showMenu();
            choose = Integer.parseInt(input.nextLine());
            
            switch(choose) {
                case 1:
                    addStudent(studentList);
                    break;
                case 2:
                    editStudentById(studentList);
                    break;
                case 3:
                    deleteStudentById(studentList);
                    break;
                case 4:
                    sortStudentByGPA(studentList);
                    displayAllStudent(studentList);
                    break;
                case 5:
                    sortStudentByName(studentList);
                    displayAllStudent(studentList);
                    break;
                case 6:
                    displayAllStudent(studentList);
                    break;
                case 7:
                    saveFile(studentList);
                    break;
                case 8:
                    readFile(studentList);
                    displayAllStudent(studentList);
                    break;
                case 9:
                    System.out.println("Exit!!!");
                    break;
                default:
                    System.out.println("Input failed!!!");
                    break;
            }
        } while(choose != 9);
    }
    
    static void showMenu() {
        System.out.println("1. Add student.");
        System.out.println("2. Edit student by id.");
        System.out.println("3. Delete student by id.");
        System.out.println("4. Sort student by gpa.");
        System.out.println("5. Sort student by name.");
        System.out.println("6. Show student.");
        System.out.println("7. Lưu thông tin sv vào file student.txt");
        System.out.println("8. Đọc thông tin sv từ file student.txt và hiển thị ra màn hình");
        System.out.println("9. Exit");
        System.out.println("Choose: ");
    }

    private static void addStudent(List<Student> studentList) {
        System.out.println("Nhap so sinh vien can them: ");
        int n = Integer.parseInt(input.nextLine());
        
        for (int i = 0; i < n; i++) {
            Student std = new Student();
            //nhap thong tin sinh vien
            std.input();
            
            studentList.add(std);
        }
    }

    private static void editStudentById(List<Student> studentList) {
        System.out.println("Nhap ID sinh vien can sua thong tin: ");
        int id = Integer.parseInt(input.nextLine());
        
        //tim sinh vien
        Student stdFind = null;
        for (Student student : studentList) {
            if(student.getId() == stdFind.getId()) {
                stdFind = student;
                break;
            }
        }
        
        if(stdFind != null) {
            //edit
            stdFind.edit();
        } else {
            System.out.println("Not found");
        }
    }

    private static void deleteStudentById(List<Student> studentList) {
        System.out.println("Nhap ID sinh vien can xoa: ");
        int id = Integer.parseInt(input.nextLine());
        
        Student stdFind = null;
        for (Student student : studentList) {
            if(student.getId() == stdFind.getId()) {
                stdFind = student;
                break;
            }
        }
        
        if(stdFind != null) {
            studentList.remove(stdFind);
        } else {
            System.out.println("Not found");
        }
    }

    private static void sortStudentByGPA(List<Student> studentList) {
        Collections.sort(studentList, new Comparator<Student>() {
            @Override
            public int compare(Student o1, Student o2) {
                if(o1.getGpa() > o2.getGpa()) {
                    return 1;
                }
                return -1;
            }
        });
    }

    private static void displayAllStudent(List<Student> studentList) {
        for (Student student : studentList) {
            student.display();
        }
    }

    private static void sortStudentByName(List<Student> studentList) {
        Collections.sort(studentList, new Comparator<Student>() {
            @Override
            public int compare(Student o1, Student o2) {
                return o1.getName().compareToIgnoreCase(o2.getName());
            }
        });
    }

    private static void saveFile(List<Student> studentList) {
        FileOutputStream fos = null;
        BufferedOutputStream bos = null;
        try {
            String filename = "student.txt";
            fos = new FileOutputStream(filename);
            
            bos = new BufferedOutputStream(fos);
            
            //ghi du lieu vao FILE
            for (Student student : studentList) {
                String line = student.getLine();
                byte[] b;
                try {
                    b = line.getBytes("utf8");
                    bos.write(b);
                } catch (UnsupportedEncodingException ex) {
                    Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
                } catch (IOException ex) {
                    Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        } catch (FileNotFoundException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            try {
                if(bos != null) {
                    bos.close();
                }
                if(fos != null) {
                    fos.close();
                }
            } catch (IOException ex) {
                Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

    private static void readFile(List<Student> studentList) {
        FileReader reader = null;
        BufferedReader bufferedReader = null;
        try {
            String filename = "student.txt";
            reader = new FileReader(filename);
            
            bufferedReader = new BufferedReader(reader);
            
            //doc du lieu tu FILE
            String line = null;
            while((line = bufferedReader.readLine()) != null) {
                Student std = new Student();
                std.parseLine(line);
                
                studentList.add(std);
            }
        } catch (FileNotFoundException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            try {
                if(bufferedReader != null) {
                    bufferedReader.close();
                }
                if(reader != null) {
                    reader.close();
                }
            } catch (IOException ex) {
                Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
}



/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package java2.lession3.files;

import java.util.Scanner;

/**
 *
 * @author Diep.Tran
 */
public class Student {
    String name, address;
    int id;
    float gpa;
    int age;

    public Student() {
    }

    public Student(String name, int age, String address, int id, float gpa) {
        this.name = name;
        this.age = age;
        this.address = address;
        this.id = id;
        this.gpa = gpa;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public float getGpa() {
        return gpa;
    }

    public void setGpa(float gpa) {
        this.gpa = gpa;
    }
    
    public void input() {
        Scanner input = new Scanner(System.in);
        System.out.println("Nhap ID: ");
        id = Integer.parseInt(input.nextLine());
        
        edit();
    }

    public void edit() {
        Scanner input = new Scanner(System.in);
        System.out.println("Nhap ten: ");
        name = input.nextLine();
        
        System.out.println("Nhap tuoi: ");
        age = Integer.parseInt(input.nextLine());
        
        System.out.println("Nhap dia chi: ");
        address = input.nextLine();
        
        System.out.println("Nhap diem trung binh: ");
        gpa = Float.parseFloat(input.nextLine());
    }

    public void display() {
        System.out.println(this);
    }

    @Override
    public String toString() {
        return "Student{" + "name=" + name + ", address=" + address + ", id=" + id + ", gpa=" + gpa + ", age=" + age + '}';
    }

    String getLine() {
        //name, address, id, gpa, age
        return name + "," + address + "," + id + "," + gpa + "," + age + "\n";
    }

    public void parseLine(String line) {
        //remove whiteplace
        line = line.trim();
        String[] params = line.split(",");
        if(params.length < 5) {
            System.out.println("Data error");
            return;
        }
        name = params[0];
        address = params[1];
        id = Integer.parseInt(params[2]);
        gpa = Float.parseFloat(params[3]);
        age = Integer.parseInt(params[4]);
    }
}


Theo dõi cập nhật nội dung học trên Youtube & Facebook


Bình luận



Chia sẻ từ lớp học

Phân Loại Bài Viết

Danh Sách Bài Học

Đã sao chép!!!