IMG-LOGO
×

Giáo Trình Học

Khoá học lập trình C# (.NET Core)

Kiến Thức Căn Bản - Khai Báo Biến, Toán Tử, Mệnh Đề Điều Kiện, Lặp

[Video] Giới thiệu về ngôn ngữ lập trình C# & .NET Framework + Khai báo biến trong C# [Video] Hướng dẫn tìm hiểu biến + toán tử trong lập trình C# [Video] Hướng dẫn tìm hiểu mệnh đề điều kiện if - else - switch trong C# [Video] Tìm dãy số nguyên tố - Lập trình C# - Loop trong C# [Video] In dãy số chẵn & lẻ từ mảng số nguyên - Lập trình C# - Loop trong C#




Trang Chủ C Sharp Chương trình quản lý sinh viên C# + Import/Export JSON + File - Lập Trình C# - Lập Trình C Sharp

Chương trình quản lý sinh viên C# + Import/Export JSON + File - Lập Trình C# - Lập Trình C Sharp

by GokiSoft.com - 10:17 19/10/2021 10,149 Lượt Xem

I. Tạo lớp đối tượng sinh viên (Student) gồm các thuộc tính : fullname, birthday, email, address, gender

- Tạo hàm tạo ko đối và có đầy đủ đối số

- Tạo hàm getter & setter

- Tạo hàm nhập thông tin sinh và hiển thị thông tin sinh viên

II. Tạo lớp đối tượng lớp học (ClassRoom) gồm các thuôc tính : name, address và mảng danh sach sinh viên (List<Student> studentList)

- Tạo hàm tạo ko đối

- Tạo getter/setter

- Tạo hàm nhập và hiển thị thông tin sinh viên

III. Tạo lớp Main chứa mảng đối tượng ClassRoom

List<ClassRoom> classList = new ArrayList<>()

IV. Xây dựng menu chương trình sau

1. Nhập thông tin sinh viên từ file json (data.json -> xem nội dụng file đc import ở dưới)

2. Hiển thị thông tin sinh viên

3. Lưu thông tin mỗi lớp học vào 1 file ten_lop.obj

Chú thích :

Khi người dùng chọn 1 : thực hiện đọc dữ liệu từ file data.json và lưu thông tin đọc vào mảng classList

Khi người dùng chọn 2 : Hiển thị thông tin lớp học từ mảng classList

Khi người dùng chọn 3 : thực hiện lưu thông tin từng lớp học vào 1 file tương ứng (Ví dụ : T1801A.obj, ...)

JSON File

[
  {
    "name": "T1801A",
    "address": "Detech Building",
    "studentList": [
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]l.com",
        "address": "Nam Dinh",
        "gender": "Nam"
      }
    ]
  },
  {
    "name": "T1804M",
    "address": "Detech Building",
    "studentList": [
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      }
    ]
  }
]



Bình luận



Chia sẻ từ lớp học

Do Trung Duc [T2008A]

Ngày viết: 22:15 21/05/2021



using System;
using System.Collections.Generic;
using Lesson4.JSON.StudentManager;

namespace Lesson4.JSON.StudentManager
{
    class Test
    {
        static List<ClassRoom> ClassList = new List<ClassRoom>();
        static void Main(string[] args)
        {
            int choose;
            do
            {
                Menu();
                choose = Int32.Parse(Console.ReadLine());
                switch (choose)
                {
                    case 1:
                        ReadData();
                        
                        break;

                    case 2:
                        DisplayData();
                        break;

                    case 3:
                        SaveDataByClass();
                        break;

                    case 4:
                        Console.WriteLine("Exit....");
                        break;
                }
            } while (choose != 4);
        }

        static void Menu()
        {
            Console.WriteLine("1. Dọc dữ liệu từ file data.json và lưu thông tin đọc vào mảng classList");
            Console.WriteLine("2. Hiển thị thông tin lớp học từ mảng classList");
            Console.WriteLine("3. Thực hiện lưu thông tin từng lớp học vào 1 file tương ứng");
            Console.WriteLine("Nhap lua chon choose = ");
        }
        private static void SaveDataByClass()
        {
            foreach (ClassRoom Element in ClassList)
            {   
                string content = Newtonsoft.Json.JsonConvert.SerializeObject(Element.StudentList);
                //Save file text
                string path = Element.Name + ".json";
                System.IO.File.WriteAllText(@path, content);
            }
            Console.WriteLine("Da luu file danh sach hoc sinh tung lop");
        
        }

        private static void DisplayData()
        {
            foreach (ClassRoom Element in ClassList)
            {
                Console.WriteLine("Ten lop: {0}, Dia chi lop: {1}", Element.Name, Element.Address);
                Console.WriteLine("Danh sach Hoc sinh trong lop {0} nhuw sau", Element.Name);
                foreach (Student student in Element.StudentList)
                {
                    student.Display();
                }
            }
        }

        private static void ReadData()
        {
            string content = System.IO.File.ReadAllText(@"student.json");
            List<ClassRoom> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClassRoom>>(content);
            ClassList = list;
            Console.WriteLine("Da doc va lua thong tin");
        }

 
    
}
}



Do Trung Duc [T2008A]

Ngày viết: 22:15 21/05/2021



using System;
using System.Collections.Generic;
using System.Text;
using Lesson4.JSON.StudentManager;

namespace Lesson4.JSON.StudentManager
{
    class ClassRoom
    {
        public string Name { get; set; }
        public string Address { get; set; }

        public List<Student> StudentList { get; set; }

        public ClassRoom() { }

        public void Input()
        {
            Console.WriteLine("Nhap ten lop: ");
            Name = Console.ReadLine();

            Console.WriteLine("Nhap dia chi lop: ");
            Address = Console.ReadLine();
        }


    }
}


Do Trung Duc [T2008A]

Ngày viết: 22:15 21/05/2021



using System;
using System.Collections.Generic;
using System.Text;
using Lesson4.JSON.StudentManager;
namespace Lesson4.JSON.StudentManager
{
    class Student
    {
        public string FullName { get; set; }

        public string BirthDay { get; set; }
        public string Email { get; set; }
        public string Address { get; set; }

        public string Gender { get; set; }

        public Student() { }

        public Student(string FullName, string Birthday, string Email, string Address, string Gender) {
            this.FullName = FullName;
            this.BirthDay = Birthday;
            this.Email = Email;
            this.Address = Address;
            this.Gender = Gender;
        }

        public void Input()
        {
            Console.WriteLine("Nhap ten sinh vien");
            FullName = Console.ReadLine();

            Console.WriteLine("Nhap ngay thang nam sinh MM/DD/YYYY");
            BirthDay = Console.ReadLine();
            //DateTime Birthday = DateTime.ParseExact(str, "d", null);

            Console.WriteLine("Nhap email sinh vien");
            Email = Console.ReadLine();

            Console.WriteLine("Nhap dia chi sinh vien");
            Address = Console.ReadLine();

            Console.WriteLine("Nhap gioi tinh sinh vien");
            Gender = Console.ReadLine();
        }

        public void Display()
        {
            Console.WriteLine("Ten: {0}, Ngay sinh: {1}, Email {2}, Dia chi {3}, Gioi tinh {4}", FullName, BirthDay, Email, Address, Gender);
        }
    }
}


Nguyễn Anh Vũ [T2008A]

Ngày viết: 17:34 21/05/2021

#Program


using System;
using System.Collections.Generic;
using System.Text;
using System.IO;


namespace Bai1536

{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            Console.OutputEncoding = Encoding.UTF8;
            List<ClassRoom> classRooms = new List<ClassRoom>();
            int c;
            do
            {
                menu();
                c = int.Parse(Console.ReadLine());
                switch (c)
                {
                    case 1:

                        classRooms = importJSON(classRooms);

                        display(classRooms);
                        break;
                    case 2:


                        display(classRooms);
                        break;
                    case 3:
                        exportJSON(classRooms);
                        break;
                    case 4:
                        Console.WriteLine("Thoat !!");
                        break;

                    default:
                        Console.WriteLine("nhap loi !!");
                        break;
                }

            } while (c != 4);

        }
        static List<ClassRoom> importJSON(List<ClassRoom> classRooms)
        {
            var content = File.ReadAllText(@"D:/C#/Less8/Student/data.json");
            classRooms = JsonConvert.DeserializeObject<List<ClassRoom>>(content);


            return classRooms;
        }
        static void display(List<ClassRoom> classRooms)
        {
            foreach (var item in classRooms)
            {
                item.display();
            }
        }
        static void exportJSON(List<ClassRoom> classRooms)
        {
            foreach (ClassRoom classroom in classRooms)
            {


                using (StreamWriter file = File.CreateText(@"d:/C#/Less8/Student/" + classroom.name + ".obj"))
                {
                    JsonSerializer serializer = new JsonSerializer();
                    serializer.Serialize(file, classroom);
                }
            }

            static void menu()
            {
                Console.WriteLine("1. Nhập thông tin sinh viên từ file json (data.json -> xem nội dụng file đc import ở dưới)");
                Console.WriteLine("2. Hiển thị thông tin sinh viên");
                Console.WriteLine("3. Lưu thông tin mỗi lớp học vào 1 file ten_lop.obj");
                Console.WriteLine("4.Thoat");
                Console.WriteLine("Chon : ");
            }



        }
    }


#Student.cs
using System;
using System.Collections.Generic;
using System.Text;

namespace Bai1536
{
    class Student
    {
        public string FullName { get; set; }
        public string Email { get; set; }
        public string Birthday { get; set; }
        public string Address { get; set; }
        public string Gender { get; set; }

        public Student(string fullname, string email, string birthday, string address, string gender)
        {
            FullName = fullname;
            Email = email;
            Birthday = birthday;
            Address = address;
            Gender = gender;
        }
        public Student()
        {

        }
        public void input()
        {
            Console.WriteLine("input fullname :");
            FullName = Console.ReadLine();
            Console.WriteLine("input email :");
            Email = Console.ReadLine();
            Console.WriteLine("input birthday :");
            Birthday = Console.ReadLine();
            Console.WriteLine("input address :");
            Address = Console.ReadLine();
            Console.WriteLine("input gender :");
            Gender = Console.ReadLine();
        }
        public void display()
        {
            Console.WriteLine("----Full name : {0} , BirthDay : {1} , Email : {2} , Address : {3} , Gender : {4}", FullName, Birthday, Email, Address, Gender);
        }
    }
}


#data.json
[
  {
    "name": "T1801A",
    "address": "Detech Building",
    "studentList": [
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      }
    ]
  },
  {
    "name": "T1804M",
    "address": "Detech Building",
    "studentList": [
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      },
      {
        "fullname": "Tran Van A",
        "birthday": "01-01-19991",
        "email": "[email protected]",
        "address": "Nam Dinh",
        "gender": "Nam"
      }
    ]
  }
]


#ClassRoom
using System;


namespace Bai1536
{
    [Serializable]
    class ClassRoom
    {
        public string Name { get; set; }
        public string Address { get; set; }
        public List<Student> studentList { get; set; }

        public ClassRoom()
        {
            studentList = new List<Student>();
        }
        public void inputClassRoom()
        {
            Console.WriteLine("input nameclass");
            Name = Console.ReadLine();
            Console.WriteLine("input address");
            Address = Console.ReadLine();
            bool ischeck = true;
            Console.WriteLine("input num student");
            Int32 num = Convert.ToInt32(Console.ReadLine());
            for(Int32 i = 1, i <= num , i++)
            {
                Console.WriteLine(i);
                Student st = new Student();
                st.input();
                studentList.Add(st);
            }
            
        }
        public void display()
        {
            Console.WriteLine("NameClass={0},Address={1}", Name, Address);
            foreach (var item in studentList)
            {
                item.display();
            }
        }
    }
}


hainguyen [T2008A]

Ngày viết: 17:11 21/05/2021


#ClassRoom.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04
{
    [Serializable]
    class ClassRoom
    {
        public string name { get; set; }
        public string address { get; set; }
        public List<Student> studentList { get; set; }

        public ClassRoom()
        {
            studentList = new List<Student>();
        }

        public void input()
        {
            Console.WriteLine("nhap name: ");
            name = Console.ReadLine();

            Console.WriteLine("nhap address: ");
            address = Console.ReadLine();

            Console.WriteLine("Nhap so sv: ");
            int N = int.Parse(Console.ReadLine());
            for (int i = 0; i < N; i++)
            {
                Student std = new Student();
                std.input();

                studentList.Add(std);
            }
        }

        public void display()
        {
            Console.WriteLine("name: = {0}, address: = {1}", name, address);
            foreach(Student std in studentList)
            {
                std.display();
            }
        } 
    }
}


#Program.cs



using System;
using System.Collections.Generic;
using System.IO;
namespace Lesson04
{
    class Program
    {
        static void Main(string[] args)
        {
            int choose;
            List<ClassRoom> classList = new List<ClassRoom>();

            do
            {
                showMenu();
                choose = int.Parse(Console.ReadLine());

                switch(choose)
                {
                    case 1:
                        Import(classList);
                        break;
                    case 2:
                        Display(classList);
                        break;
                    case 3:
                        Save(classList);
                        break;
                    case 4:
                        Environment.Exit(0);
                        break;
                    default:
                        Console.WriteLine("Fail!");
                        break;
                }
            } while (choose != 4);

            
        }
        static void Import(List<ClassRoom> classList) 
        {
            var content = System.IO.File.ReadAllText(@"data.json");
            Console.WriteLine(content);

            classList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClassRoom>>(content);
            Display(classList);
        }
        
        static void Display(List<ClassRoom> classList)
        {
            foreach(ClassRoom classroom in classList)
            {
                classroom.display();
            }
        }

        static void Save(List<ClassRoom> classList)
        {
            foreach(ClassRoom classroom in classList)
            {
                using (Stream stream = File.Open(classroom.name+".obj", FileMode.Create))
                {
                    var binaryFormatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
                    binaryFormatter.Serialize(stream, classroom);
                } 
            }
        }

        static void showMenu()
        {
            Console.WriteLine("1.Nhap du lieu");
            Console.WriteLine("2.Hien thi thong tin");
            Console.WriteLine("3.Luu");
            Console.WriteLine("4.Thoat");
            Console.WriteLine("Chon: ");
        }
    }
}


#Student.cs


using System;
using System.Collections.Generic;
using System.Text;

namespace Lesson04
{
    [Serializable]
    class Student
    {
        public string fullname { get; set; }
        public string birthday { get; set; }
        public string email { get; set; }
        public string address { get; set; }
        public string gender { get; set; }

        public Student() { }

        public Student(string fullname, string birthday, string email, string address, string gender)
        {
            this.fullname = fullname;
            this.birthday = birthday;
            this.email = email;
            this.address = address;
            this.gender = gender;
        }

        public void input()
        {
            Console.WriteLine("nhap fullname: ");
            fullname = Console.ReadLine();

            Console.WriteLine("nhap birthday: ");
            birthday = Console.ReadLine();

            Console.WriteLine("nhap email: ");
            email = Console.ReadLine();

            Console.WriteLine("nhap address: ");
            address = Console.ReadLine();

            Console.WriteLine("nhap gender: ");
            gender = Console.ReadLine();
        }

        public void display()
        {
            Console.WriteLine("fullname: = {0}, birthday: = {1}, email: = {2}, address: = {3}, gender: = {4}",
                                                                            fullname, birthday, email, address, gender);
        }
    }
}


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

Tài Liệu Tham Khảo

Ứng Dụng Tiện Ích



Đã sao chép!!!