Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Java I/O question The Class Member is a serializable class. Write a variable ari

ID: 3847250 • Letter: J

Question

Java I/O question

The Class Member is a serializable class. Write a variable arity method serializeMethod() that takes any number of instances of Member as parameters and write them to a file in the order they are passed into the method. In Coderunner, the file is hidden from you and is instead made available to you via an Output Stream object referenced by the ostream instance variable in the class in which your method will be placed. Use this object instead of Files.newOutputStream(Paths.get("...")); to write to the file.

Explanation / Answer

Inorder to pass multiple parameter we can use any type of collection, But to maintain The order given, I have given ArrayList

//Member.java

import java.util.*;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

public class Member implements java.io.Serializable {
   private String id;
   private char role;
   private int lengthOfMembership;
  
   public Member() {
       super();
   }
   public Member(String id, char role, int lengthOfMembership) {
       super();
       this.id = id;
       this.role = role;
       this.lengthOfMembership = lengthOfMembership;
   }
   public String getId() {
       return id;
   }
   public void setId(String id) {
       this.id = id;
   }
   public char getRole() {
       return role;
   }
   public void setRole(char role) {
       this.role = role;
   }
   public int getLengthOfMembership() {
       return lengthOfMembership;
   }
   public void setLengthOfMembership(int lengthOfMembership) {
       this.lengthOfMembership = lengthOfMembership;
   }
   public String toString(){
       System.out.println("Member Id: "+this.id);
       System.out.println("role: "+this.role);
       System.out.println("Length Of membership: "+this.lengthOfMembership);
       return(" ");
   }
   public void serializeMethod(ArrayList<Member> m1)throws Exception{
       FileOutputStream fileOut =
       new FileOutputStream("D:/Member.ser");
       ObjectOutputStream out = new ObjectOutputStream(fileOut);
       out.writeObject(m1);
       out.close();
       fileOut.close();
   }
   public ArrayList<Member> deDeserializemethod() throws Exception{
       ObjectInputStream in=new ObjectInputStream(new FileInputStream("D:/Member.ser"));
       ArrayList<Member> dm1=(ArrayList<Member>)in.readObject();
       in.close();
       return dm1;
   }
}

//Tester.Java

import java.util.*;
public class Tester {

   public static void main(String[] args) throws Exception {
       // TODO Auto-generated method stub
       Member dm1= new Member();
       Member m1= new Member("SI2993",'c',2);
       Member m2= new Member("GE8103",'s',1);
       Member m3= new Member("PD9320",'s',1);
      
       // Collection is used to pass multiple objects to serial data
       ArrayList<Member> members= new ArrayList<Member>();
      
       members.add(m1);
       members.add(m2);
       members.add(m3);
       dm1.serializeMethod(members);
       System.out.println("Deserialized Data:");
       ArrayList<Member> deSerialMembers= new ArrayList<Member>();
       deSerialMembers=dm1.deDeserializemethod();
      
       // To print the deserialize Data
       for(Member m:deSerialMembers){
       System.out.println(m.toString());
       }
   }

}

Sample Output:

Deserialized Data:
Member Id: SI2993
role: c
Length Of membership: 2

Member Id: GE8103
role: s
Length Of membership: 1

Member Id: PD9320
role: s
Length Of membership: 1

Please Rate It if you get the Answer. Thanks....)

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote