Lớp ObjectOutputStream trong java được sử dụng để ghi các kiểu dữ liệu nguyên thuỷ và các đối tượng Java vào một OutputStream. Chỉ có các đối tượng implements giao tiếp java.io.Serializable mới có thể được ghi vào stream.
Khai báo của lớp ObjectOutputStream
Dưới đây là khi báo của lớp Java.io.ObjectOutputStream:
public class ObjectOutputStream extends OutputStream implements ObjectOutput, ObjectStreamConstants
Nội dung chính
Constructor của lớp ObjectOutputStream
Constructor | Mô tả |
---|---|
public ObjectOutputStream(OutputStream out) | Tạo một ObjectOutputStream ghi vào OutputStream được chỉ định. |
Các phương thức của lớp ObjectOutputStream
Phương thức | Mô tả |
---|---|
public final void writeObject(Object obj) | Ghi một đối tượng được chỉ định tới ObjectOutputStream. |
public void flush() | Làm sạch ObjectInputStream hiện tại. |
public void close() | Đóng ObjectInputStream hiện tại. |
Ví dụ về lớp ObjectOutputStream trong java
File: Student.java
import java.io.Serializable; public class Student implements Serializable { private static final long serialVersionUID = 1L; private int id; private String name; private String address; private int age; public void Studet() {} public Student(int id, String name, String address, int age) { super(); this.id = id; this.name = name; this.address = address; this.age = age; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String toString() { return "Student@[id=" + id + " , name=" + name + ", " + "address= " + address + ",age =" + age+ "]"; } }
File: ObjectOutputStreamExample.java
import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; public class ObjectOutputStreamExample { public static void main(String[] args) throws IOException { ObjectOutputStream oos = null; try { oos = new ObjectOutputStream(new FileOutputStream("D:\\testout.txt")); // create student Student student = new Student(1, "Tran Hao Phong", "Ha Noi", 17); // write student oos.writeObject(student); System.out.println("Success..."); } catch (IOException ex) { ex.printStackTrace(); } finally { oos.close(); } } }
Output:
Success...
testout.txt: