So schreiben Sie ein Objekt in eine Datei in Java
Java-Objekte können für den zukünftigen Zugriff in eine Datei geschrieben werden. Dies wird alsSerialization bezeichnet. Dazu müssen SieSerializable+`interface, and use `+ObjectOutputStream
implementieren, um Objekte in eine Datei zu schreiben.
FileOutputStream fout = new FileOutputStream("c:\\temp\\address.ser"); ObjectOutputStream oos = new ObjectOutputStream(fout); oos.writeObject(address);
1. Objekt
Erstellen Sie ein Adressobjekt und implementieren Sie dieSerializable
-Schnittstelle. Dieses Objekt wird in eine Datei geschrieben.
Address.java
package com.example.io; import java.io.Serializable; public class Address implements Serializable { private static final long serialVersionUID = 1L; String street; String country; public void setStreet(String street) { this.street = street; } public void setCountry(String country) { this.country = country; } public String getStreet() { return this.street; } public String getCountry() { return this.country; } @Override public String toString() { return new StringBuffer(" Street : ") .append(this.street).append(" Country : ") .append(this.country).toString(); } }
2. Objekt in Datei schreiben
Diese Klasse schreibt das Objekt "Adresse" und seinen variablen Wert ("Wall Street", "United State") in eine Datei mit dem Namenc:\temp\address.ser
WriteObject.java
package com.example.io; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; public class WriteObject { public static void main(String args[]) { WriteObject obj = new WriteObject(); Address address = new Address(); address.setStreet("wall street"); address.setCountry("united state"); obj.serializeAddress(address); } public void serializeAddress(Address address) { FileOutputStream fout = null; ObjectOutputStream oos = null; try { fout = new FileOutputStream("c:\\temp\\address.ser"); oos = new ObjectOutputStream(fout); oos.writeObject(address); System.out.println("Done"); } catch (Exception ex) { ex.printStackTrace(); } finally { if (fout != null) { try { fout.close(); } catch (IOException e) { e.printStackTrace(); } } if (oos != null) { try { oos.close(); } catch (IOException e) { e.printStackTrace(); } } } } public void serializeAddressJDK7(Address address) { try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("c:\\temp\\address2.ser"))) { oos.writeObject(address); System.out.println("Done"); } catch (Exception ex) { ex.printStackTrace(); } } }
Note
Bitte lesen Sie diesen Artikel überhow to read the saved object from file – Java.