Java.io.ObjectOutputStream-klasse in Java | Stel 2 in
Java.io.ObjectOutputStream-klasse in Java | Set 1 Meer methoden:
void write(byte[] buf) :
Writes an array of bytes. This method will block until the byte is actually written.
Syntax : public void write(byte[] buf) throws IOException Parameters: buf - the data to be written Throws: IOException
void write(byte[] buf int uit int len) :
Writes a sub array of bytes.
Syntax : public void write(byte[] buf int off int len) throws IOException Parameters: buf - the data to be written off - the start offset in the data len - the number of bytes that are written Throws: IOException
void write(int val) :
Writes a byte. This method will block until the byte is actually written.
Syntax : public void write(int val) throws IOException Parameters: val - the byte to be written to the stream Throws: IOException
void writeBoolean(boolean val) :
Writes a boolean.
Syntax : public void writeBoolean(boolean val) throws IOException Parameters: val - the boolean to be written Throws: IOException
void writeByte(int val) :
Writes an 8 bit byte.
Syntax : public void writeByte(int val) throws IOException Parameters: val - the byte value to be written Throws: IOException
void writeBytes(Stringstr) :
Writes a String as a sequence of bytes.
Syntax : public void writeBytes(String str) throws IOException Parameters: str - the String of writeBytes to be written Throws: IOException
void writeChar(int val) :
Writes a 16 bit char.
Syntax : public void writeChar(int val) throws IOException Parameters: val - the char value to be written Throws: IOException
void writeChars(Stringstr) :
Writes a String as a sequence of chars.
Syntax : public void writeChars(String str) throws IOException Parameters: str - the String of chars to be written Throws: IOException
Write the specified class descriptor to the ObjectOutputStream. Class descriptors are used to identify the classes of objects written to the stream. Subclasses of ObjectOutputStream may override this method to customize the way in which class descriptors are written to the serialization stream. The corresponding method in ObjectInputStream readClassDescriptor should then be overridden to reconstitute the class descriptor from its custom stream representation. By default this method writes class descriptors according to the format defined in the Object Serialization specification.
Syntax : protected void writeClassDescriptor(ObjectStreamClass desc) throws IOException Parameters: desc - class descriptor to write to the stream Throws: IOException
void writeDouble(dubbele val) :
Writes a 64 bit double.
Syntax : public void writeDouble(double val) throws IOException Parameters: val - the double value to be written Throws: IOException
void writeFields() :
Write the buffered fields to the stream.
Syntax : public void writeFields() throws IOException Throws: IOException NotActiveException
void writeFloat(float val) :
Writes a 32 bit float.
Syntax : public void writeFloat(float val) throws IOException Parameters: val - the float value to be written Throws: IOException
void writeInt(int val) :
Writes a 32 bit int.
Syntax : public void writeInt(int val) throws IOException Parameters: val - the integer value to be written Throws: IOException
void writeLong(lange waarde) :
Writes a 64 bit long.
Syntax : public void writeLong(long val) throws IOException Parameters: val - the long value to be written Throws: IOException
void writeObject(Objectobject) :
Write the specified object to the ObjectOutputStream.The class of the object the signature of the class and the values of the non-transient and non-static fields of the class and all of its supertypes are written. Default serialization for a class can be overridden using the writeObject and the readObject methods. Objects referenced by this object are written transitively so that a complete equivalent graph of objects can be reconstructed by an ObjectInputStream.
Syntax : public final void writeObject(Object obj) throws IOException Parameters: obj - the object to be written Throws: InvalidClassException NotSerializableException IOException
protected void writeObjectOverride(Object obj) :
Method used by subclasses to override the default writeObject method. This method is called by trusted subclasses of ObjectInputStream that constructed ObjectInputStream using the protected no-arg constructor. The subclass is expected to provide an override method with the modifier 'final'.
Syntax : protected void writeObjectOverride(Object obj) throws IOException Parameters: obj - object to be written to the underlying stream Throws: IOException
void writeShort(int val) :
Writes a 16 bit short.
Syntax : public void writeShort(int val) throws IOException Parameters: val - the short value to be written Throws: IOException
beschermde leegte writeStreamHeader() :
The writeStreamHeader method is provided so subclasses can append or prepend their own header to the stream.It writes the magic number and version to the stream.
Schrijft een 'niet-gedeeld' object naar de ObjectOutputStream. Deze methode is identiek aan writeObject, behalve dat het het gegeven object altijd als een nieuw uniek object in de stroom schrijft (in tegenstelling tot een terugverwijzing die naar een eerder geserialiseerde instantie verwijst). Specifiek:
Een object geschreven via writeUnshared wordt altijd op dezelfde manier geserialiseerd als een nieuw verschijnend object (een object dat nog niet naar de stream is geschreven), ongeacht of het object al eerder is geschreven of niet.
Als writeObject wordt gebruikt om een object te schrijven dat eerder met writeUnshared is geschreven, wordt de vorige writeUnshared-bewerking behandeld alsof het een schrijfbewerking van een afzonderlijk object betreft. Met andere woorden: ObjectOutputStream zal nooit terugverwijzingen genereren naar objectgegevens die zijn geschreven door aanroepen van writeUnshared.
While writing an object via writeUnshared does not in itself guarantee a unique reference to the object when it is deserialized it allows a single object to be defined multiple times in a stream so that multiple calls to readUnshared by the receiver will not conflict. Note that the rules described above only apply to the base-level object written with writeUnshared and not to any transitively referenced sub-objects in the object graph to be serialized. ObjectOutputStream subclasses which override this method can only be constructed in security contexts possessing the 'enableSubclassImplementation' SerializablePermission; any attempt to instantiate such a subclass without this permission will cause a SecurityException to be thrown.
Syntax : public void writeUnshared(Object obj) throws IOException Parameters: obj - object to write to stream Throws: NotSerializableException InvalidClassException IOException
void writeUTF(Stringstr) :
Primitive data write of this String in modified UTF-8 format.Note that there is a significant difference between writing a String into the stream as primitive data or as an Object. A String instance written by writeObject is written into the stream as a String initially. Future writeObject() calls write references to the string into the stream.
Syntax : public void writeUTF(String str) throws IOException Parameters: str - the String to be written Throws: IOException
leegte flush() :
Flushes the stream. This will write any buffered output bytes and flush through to the underlying stream.
Syntax : public void flush() throws IOException Throws: IOException
//Java program illustrating ObjectOutputStream//write methodsimportjava.io.*;classObjectOutputStreamDemo{publicstaticvoidmain(String[]args)throwsIOExceptionClassNotFoundException{FileOutputStreamout=newFileOutputStream('file.txt');ObjectOutputStreamoout=newObjectOutputStream(out);oout.writeObject(newdemo());//illustrating writeUnshared()//Writes an 'unshared' object to the ObjectOutputStream.oout.writeUnshared(14);//flush the streamoout.flush();oout.close();FileInputStreamfin=newFileInputStream('file.txt');ObjectInputStreamois=newObjectInputStream(fin);// read an object from the stream and cast it to demodemoobj=(demo)ois.readObject();System.out.println(obj.var);System.out.println(ois.readUnshared());}}classdemoimplementsSerializable{staticintvar= 25;// assign a new serialPersistentFieldsprivatestaticfinalObjectStreamField[]serialPersistentFields={newObjectStreamField('var'Integer.TYPE)};privatevoidreadObject(ObjectInputStreamin)throwsIOExceptionClassNotFoundException{// makes them available by name.ObjectInputStream.GetFieldfields=in.readFields();//Get the value of the named int field from the persistent field.var= fields.get('var'0);}privatevoidwriteObject(ObjectOutputStreamout)throwsIOException{// write into the ObjectStreamField array the variable stringObjectOutputStream.PutFieldfields=out.putFields();fields.put('var'var);//Write the buffered fields to the streamout.writeFields();}}