/* Program : 2
Create a program that will write and read the same object from a file and display the content on the screen
Developed by : Malhar Vora
Developed on : 5-11-2010
Development Status : Completed and tested
Email : vbmade2000@gmail.com
WebSite : http://technojungle.co.cc
*******************************************************************************************************************/
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class Student implements Serializable
{
private int id;
private String name;
private String course;
Student()
{
id=0;
name="";
course="";
}
Student(int sid,String sname,String scourse)
{
this.id=sid;
this.name=sname;
this.course=scourse;
}
int getId()
{
return this.id;
}
void setId(int sid)
{
this.id=sid;
}
String getName()
{
return this.name;
}
void setName(String sname)
{
this.name=sname;
}
String getCourse()
{
return this.course;
}
void setCourse(String scourse)
{
this.course=scourse;
}
}
public class P2 extends JFrame implements ActionListener
{
JLabel lblId=null;
JLabel lblName=null;
JLabel lblCourse=null;
JTextField txtId=null;
JTextField txtName=null;
JTextField txtCourse=null;
JButton btnSave=null;
JButton btnClear=null;
JButton btnLoad=null;
P2()
{
lblId = new JLabel("Student ID");
lblName = new JLabel("Student Name");
lblCourse = new JLabel("Course");
txtId = new JTextField(5);
txtName = new JTextField(20);
txtCourse = new JTextField(40);
btnSave = new JButton("Save");
btnClear = new JButton("Clear");
btnLoad = new JButton("Load");
setTitle("Program 2 - Developed by Malhar Vora");
setSize(400,500);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(null);
lblId.setBounds(50,50,100,50);
lblName.setBounds(50,90,100,50);
lblCourse.setBounds(50,130,100,50);
txtId.setBounds(150,60,60,30);
txtName.setBounds(150,100,200,30);
txtCourse.setBounds(150,140,100,30);
btnSave.setBounds(50,200,80,30);
btnClear.setBounds(150,200,80,30);
btnLoad.setBounds(250,200,80,30);
btnSave.setMnemonic(KeyEvent.VK_S);
btnClear.setMnemonic(KeyEvent.VK_C);
btnLoad.setMnemonic(KeyEvent.VK_L);
this.getContentPane().add(lblId);
this.getContentPane().add(lblName);
this.getContentPane().add(lblCourse);
this.getContentPane().add(txtId);
this.getContentPane().add(txtName);
this.getContentPane().add(txtCourse);
this.getContentPane().add(btnSave);
this.getContentPane().add(btnClear);
this.getContentPane().add(btnLoad);
txtId.requestFocus();
btnSave.addActionListener(this);
btnClear.addActionListener(this);
btnLoad.addActionListener(this);
}
void saveStudent(Student s)
{
FileOutputStream fos=null;
ObjectOutputStream oos=null;
try{
fos = new FileOutputStream("Student.dat");
oos = new ObjectOutputStream(fos);
oos.writeObject(s);
}
catch(Exception e)
{
JOptionPane.showMessageDialog(this,"Error in writing data to file","Error",JOptionPane.ERROR_MESSAGE);
}
finally
{
try{
oos.close();
fos.close();
}
catch(Exception e)
{
;
}
}
}
Student loadStudent()
{
FileInputStream fis=null;
ObjectInputStream ois=null;
Student s=null;
try{
fis = new FileInputStream("Student.dat");
ois = new ObjectInputStream(fis);
s=(Student)ois.readObject();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(this,"Error in reading data","Error",JOptionPane.ERROR_MESSAGE);
}
finally
{
try{
ois.close();
fis.close();
}
catch(Exception e)
{
;
}
}
return s;
}
public void actionPerformed(ActionEvent ae)
{
String cmd = ae.getActionCommand();
Student s=null;
if(cmd.equals("Save"))
{
s = new Student();
s.setId(Integer.parseInt(txtId.getText()));
s.setName(txtName.getText());
s.setCourse(txtCourse.getText());
saveStudent(s);
}
else if(cmd.equals("Clear"))
{
txtId.setText("");
txtName.setText("");
txtCourse.setText("");
}
else if(cmd.equals("Load"))
{
s=null;
s=loadStudent();
txtId.setText("");
txtName.setText("");
txtCourse.setText("");
if(s!=null)
{
txtId.setText("" + s.getId());
txtName.setText(s.getName());
txtCourse.setText(s.getCourse());
}
}
}
public static void main(String []str)
{
P2 p = new P2();
}
}
Sunday, November 7, 2010
Create a program that will write and read the same object from a file and display the content on the screen
Labels:
Java
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.