[go: up one dir, main page]

0% found this document useful (0 votes)
7 views5 pages

File_handling(oop-8)

How to handle a file concept

Uploaded by

darklover4545
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views5 pages

File_handling(oop-8)

How to handle a file concept

Uploaded by

darklover4545
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

import java.io.

*;
import java.util.*;
class Student implements Serializable {
private String studentID;
private String name;
private int rollNo;
private String studentClass;
private int marks;
private String address;
public Student(String studentID, String name, int rollNo, String studentClass,
int marks, String address) {
this.studentID = studentID;
this.name = name;
this.rollNo = rollNo;
this.studentClass = studentClass;
this.marks = marks;
this.address = address;
}
public String getStudentID(){
return studentID;
}
public String getName(){
return name;
}
public int getRollNo(){
return rollNo;
}
public String getStudentClass(){
return studentClass;
}
public int getMarks(){
return marks;
}
public String getAddress(){
return address;
}
public String toString(){
return "Student ID: " + studentID + "\nName: " + name + "\nRoll No: " +
rollNo + "\nClass: " + studentClass + "\nMarks: " + marks + "\nAddress: " + address;
}
}
public class StudentDatabase{
private static final String FILE_NAME = "students.dat";
private List<Student> students;
public StudentDatabase(){
students = new ArrayList<>();
loadDatabase();
}
private void loadDatabase() {
try (ObjectInputStream ois = new ObjectInputStream(new
FileInputStream(FILE_NAME))) {
students = (List<Student>) ois.readObject();
}
catch (FileNotFoundException e) {
System.out.println("Database file not found. Starting with an empty
database.");
}
catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
private void saveDatabase() {
try (ObjectOutputStream oos = new ObjectOutputStream(new
FileOutputStream(FILE_NAME))) {
oos.writeObject(students);
}
catch (IOException e) {
e.printStackTrace();
}
}
public void createStudent(String studentID, String name, int rollNo, String
studentClass, int marks,String address) {
students.add(new Student(studentID, name, rollNo, studentClass, marks,
address));
saveDatabase();
}
public void displayStudents() {
for (Student student : students) {
System.out.println(student);
System.out.println("----------------------------");
}
}
public void deleteStudent(String studentID) {
students.removeIf(student -> student.getStudentID().equals(studentID));
saveDatabase();
}
public void updateStudent(String studentID, String name, int rollNo, String
studentClass, int marks,
String address) {
for (Student student : students) {
if (student.getStudentID().equals(studentID)) {
students.remove(student);
students.add(new Student(studentID, name, rollNo, studentClass,
marks, address));
break;
}
}
saveDatabase();
}
public void searchStudent(String studentID) {
for (Student student : students) {
if (student.getStudentID().equals(studentID)) {
System.out.println(student);
return;
}
}
System.out.println("Student not found.");
}
public static void main(String[] args) {
StudentDatabase db = new StudentDatabase();
Scanner scanner = new Scanner(System.in);
int choice;
do {
System.out.println("1. Create Student");
System.out.println("2. Display Students");
System.out.println("3. Delete Student");
System.out.println("4. Update Student");
System.out.println("5. Search Student");
System.out.println("6. Exit");
System.out.print("Enter your choice: ");
choice = scanner.nextInt();
scanner.nextLine();
switch (choice) {
case 1:
System.out.print("Enter Student ID: ");
String studentID = scanner.nextLine();
System.out.print("Enter Name: ");
String name = scanner.nextLine();
System.out.print("Enter Roll No: ");
int rollNo = scanner.nextInt();
scanner.nextLine();
System.out.print("Enter Class: ");
String studentClass = scanner.nextLine();
System.out.print("Enter Marks: ");
int marks = scanner.nextInt();
scanner.nextLine();
System.out.print("Enter Address: ");
String address = scanner.nextLine();
db.createStudent(studentID, name, rollNo, studentClass, marks,
address);
break;
case 2:
db.displayStudents();
break;
case 3:
System.out.print("Enter Student ID to delete: ");
studentID = scanner.nextLine();
db.deleteStudent(studentID);
break;
case 4:
System.out.print("Enter Student ID to update: ");
studentID = scanner.nextLine();
System.out.print("Enter Name: ");
name = scanner.nextLine();
System.out.print("Enter Roll No: ");
rollNo = scanner.nextInt();
scanner.nextLine();
System.out.print("Enter Class: ");
studentClass = scanner.nextLine();
System.out.print("Enter Marks: ");
marks = scanner.nextInt();
scanner.nextLine();
System.out.print("Enter Address: ");
address = scanner.nextLine();
db.updateStudent(studentID, name, rollNo, studentClass, marks,
address);
break;
case 5:
System.out.print("Enter Student ID to search: ");
studentID = scanner.nextLine();
db.searchStudent(studentID);
break;
case 6:
System.out.println("Exiting...");
break;
default:
System.out.println("Invalid choice. Please try again.");
}
} while (choice != 6);
scanner.close();
}
}
OUTPUT :-
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 1
Enter Student ID: 101
Enter Name: xyz
Enter Roll No: 36
Enter Class: SE
Enter Marks: 98
Enter Address: qwerty
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 1
Enter Student ID: 102
Enter Name: abc
Enter Roll No: 49
Enter Class: SE
Enter Marks: 99
Enter Address: wasd
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 2
Student ID: 101
Name: xyz
Roll No: 36
Class: SE
Marks: 98
Address: qwerty
----------------------------
Student ID: 102
Name: abc
Roll No: 49
Class: SE
Marks: 99
Address: wasd
----------------------------
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 4
Enter Student ID to update: 102
Enter Name: pqr
Enter Roll No: 46
Enter Class: TE
Enter Marks: 89
Enter Address: zxt
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 5
Enter Student ID to search: 102
Student ID: 102
Name: pqr
Roll No: 46
Class: TE
Marks: 89
Address: zxt
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 3
Enter Student ID to delete: 101
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 2
Student ID: 102
Name: pqr
Roll No: 46
Class: TE
Marks: 89
Address: zxt
----------------------------
1. Create Student
2. Display Students
3. Delete Student
4. Update Student
5. Search Student
6. Exit
Enter your choice: 6
Exiting...

You might also like