readFields(): This method is available in the java.io.ObjectInputStream class of Java.
Syntax:
GetField java.io.ObjectInputStream.readFields() throws IOException, ClassNotFoundException
This method reads the persistent fields from the stream and makes them available by name.
Parameters: NA
Returns: the GetField object represents the persistent fields of the object being deserialized.
Throws:
1. ClassNotFoundException - if the class of a serialized object cannot be found.
2. IOException - if an I/O error occurs.
3. NotActiveException - if the stream is not currently reading objects.
Approach
Java
import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.NotActiveException;import java.io.ObjectInputStream;public class ObjectInputStreamreadFields {public static void main(String[] args) throws IOException {InputStream in = new FileInputStream("D:\\hello.txt");ObjectInputStream objectInputStream = new ObjectInputStream(in);try {System.out.println(objectInputStream.readFields());} catch (ClassNotFoundException e) {System.out.println("ClassNotFoundException occurs");} catch (NotActiveException e) {System.out.println("NotActiveException occurs");} catch (IOException e) {System.out.println("IOException occurs");}objectInputStream.close();}}
Output:
NotActiveException occurs
Some more methods of ObjectInputStream
available(): This method returns the number of bytes that can be read without blocking.
close(): This method closes the input stream. Must be called to release any resources associated with the stream.
defaultReadObject(): This method read the non-static and non-transient fields of the current class from this stream.
getObjectInputFilter(): This method returns the serialization filter for this stream.
read(): This method reads a byte of data.
read(byte[], int, int): This method reads into an array of bytes.
readBoolean(): This method reads in a boolean.
readByte(): This method reads an 8-bit byte.
readChar(): This method reads a 16-bit char.
readDouble(): This method reads a 64-bit double.
readFloat(): This method reads a 32-bit float.
readFully(byte[]): This method reads bytes, blocking until all bytes are read.
readFully(byte[], int, int): This method reads bytes, blocking until all bytes are read.
readInt(): This method reads a 32-bit int.
readLong(): This method reads 64-bit long.
readObject(): This method read an object from the ObjectInputStream.
readShort(): This method reads a 16-bit short.
readUnshared(): This method reads an "unshared" object from the ObjectInputStream.
readUnsignedByte(): This method reads an unsigned 8-bit byte.
readUnsignedShort(): This method reads an unsigned 16-bit short.
readUTF(): This method reads a String in modified UTF-8 format.
registerValidation(ObjectInputValidation, int): This method registers an object to be validated before the graph is returned.
setObjectInputFilter(ObjectInputFilter): This method set the serialization filter for the stream.
skipBytes(int): This method skips bytes.
No comments:
Post a Comment