ОбјецтИнпутСтреам Цласс десеријализује примитивне податке и објекте које је претходно написао ОбјецтОутпутСтреам .
- И ОбјецтОутпутСтреам и ОбјецтИнпутСтреам се користе јер обезбеђује складиште за графове објекта.
- Обезбеђује да објекат за који ради одговара класама ЈВМ-а, односно Јава виртуелне машине. Само они Објекат могу да се читају из токова који подржавају Сериализабле или Екстернализујуће - ИО класе иначе грешка. Сериализабле је у основи нека врста маркера за ЈВМ (Јава виртуелну машину) који га усмерава да запише стање објекта присутног у Стреам-у
Декларација:
public class ObjectInputStream
extends InputStream
implements ObjectInput ObjectStreamConstants
Конструктори:
- заштићени ОбјецтИнпутСтреам() : Помозите подкласама да не додељују приватне податке које користи ОбјецтИнпутСтреам ако поново имплементирају ОбјецтИнпутСтреам.
- ОбјецтИнпутСтреам(ИнпутСтреам соурце_инпут) : Креирајте ОбјецтИнпутСтреам који чита податке из улазног тока 'соурце_инпут'.
Методе:
- реад() : јава.ио.ОбјецтИнпутСтреам.реад() чита бајт података и блокира у случају да нема података за читање. Синтакса:
public int read()
Parameters :
-----------
Return :
reads byte else return -1 if end of Stream is detected.
Exception :
-> IOException : in case of any IO error occurs.
- реадБоолеан() : јава.ио.ОбјецтИнпутСтреам.реадБоолеан() чита у логичком износу.
Синтакса:
public int readBoolean()Java
Parameters :
-----------
Return :
reads in a boolean.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
// Java program explaining the working of read() readBoolean() method import java.io.*; public class NewClass { public static void main(String[] args) throws IOException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); // Methods covered in later geek_outStream.writeBoolean(true); geek_outStream.writeUTF("Geeks For Geeks"); geek_outStream.flush(); // Use of readBoolean() System.out.println("USe of readBoolean() : " + Geek_inStream.readBoolean()); System.out.print("Use of read() method in Java : "); // Use of read() method : reading the content of file for (int i = 0; i < Geek_inStream.available();) { System.out.print((char) Geek_inStream.read()); } } }
- Излаз :
USe of readBoolean() : true
Use of read() method in Java : Geeks For Geeks
- реад(бите[] буффер инт оффсет инт маклен) : јава.ио.ОбјецтИнпутСтреам.реад(бите[] буффер инт оффсет инт маклен) чита део података из 'бафера' почевши од офсет позиције до максималне позиције бафера. Синтакса:
public int read(byte[] buffer int offset int maxlen)Java
Parameters :
buffer : buffer to be read
offset : starting position of the buffer
maxlen : max. no. of bytes to be read
Return :
reads 'maxlen' bytes of data else return -1 if end of Stream is detected.
Exception :
-> IOException : in case of any IO error occurs.
// Java program explaining the working of // read(byte[] buffer int offset int maxlen) import java.io.*; public class NewClass { public static void main(String[] args) throws IOException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); // create an ObjectInputStream for the file we created before ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeUTF("GeeksForGeeks"); geek_outStream.flush(); byte[] buffer = new byte[25]; // Use of read(byte[] buffer int offset int maxlen) Geek_inStream.read(buffer 2 20); System.out.print("Use of read(buffer offset maxlen) : "); for (int i = 0; i < 19; i++) { System.out.print((char)buffer[i]); } } }
- Излаз :
GeeksForGeeks
- реадБите() : јава.ио.ОбјецтИнпутСтреам.реадБите() чита 8-битни бајт.
Синтакса:
public byte readByte()
Parameters :
-----------
Return :
reads 8-bit byte.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
- реадЦхар() : јава.ио.ОбјецтИнпутСтреам.реадЦхар() чита 16-битни знак.
Синтакса:
public int read()
Parameters :
-----------
Return :
reads 16-bit of char.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
- реадДоубле() : јава.ио.ОбјецтИнпутСтреам.реадДоубле() чита 64-битно двоструко.
Синтакса:
public double readDouble()
Parameters :
-----------
Return :
reads 64 bit double.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
- реадФлоат() : јава.ио.ОбјецтИнпутСтреам.реадФлоат() чита 32-битни флоат.
Синтакса:
public float readFloat()
Parameters :
-----------
Return :
reads a 32 bit float.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
- реадИнт() : јава.ио.ОбјецтИнпутСтреам.реадИнт() чита 32-битни инт.
Синтакса:
public int readInt()
Parameters :
-----------
Return :
reads a 32 bit int.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
- реадЛонг() : јава.ио.ОбјецтИнпутСтреам.реадЛонг() чита 64 бита.
Синтакса:
public long readLong()Java
Parameters :
-----------
Return :
reads a 64 bit long.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
// Java program explaining the working of // readChar() writeByte() writeDouble() // writeFloat() writeInt() writeLong() import java.io.*; public class NewClass { public static void main(String[] args) throws IOException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); // create an ObjectInputStream for the file we created before ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeChar('G'); geek_outStream.writeByte('G'); geek_outStream.writeDouble(00436754746); geek_outStream.writeFloat(2.12345f); geek_outStream.writeInt(3576); geek_outStream.writeLong(368723776); geek_outStream.flush(); // Use of readChar() System.out.println("Use of readChar() : " + Geek_inStream.readChar()); // Use of readByte() : System.out.println("Use of readByte() : " + Geek_inStream.readByte()); // Use of readDouble() : System.out.println("Use of readDouble() : " + Geek_inStream.readDouble()); // Use of readFloat() : System.out.println("Use of readFloat() : " + Geek_inStream.readFloat()); // Use of readInt() : System.out.println("Use of readInt() : " + Geek_inStream.readInt()); // Use of readLong() : System.out.println("Use of readLong() : " + Geek_inStream.readLong()); } }
- Излаз :
Use of readChar() : G
Use of readByte() : 71
Use of readDouble() : 7.5225574E7
Use of readFloat() : 2.12345
Use of readInt() : 3576
Use of readLong() : 368723776
- реадУнсигнедБите() : јава.ио.ОбјецтИнпутСтреам.реадУнсигнедБите() чита неозначени 8-битни бајт.
Синтакса:
public int readUnsignedByte()
Parameters :
-----------
Return :
reads an unsigned 8 bit byte.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
- реадУнсигнедСхорт() : јава.ио.ОбјецтИнпутСтреам.реадУнсигнедСхорт() чита неозначени 16-битни кратки. Синтакса:
public int readUnsignedShort()Java
Parameters :
-----------
Return :
reads an unsigned 16 bit short.
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if end of the stream is reached.
// Java program explaining the working of // readUnsignedByte() and readUnsignedShort() import java.io.*; public class NewClass { public static void main(String[] args) throws IOException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); // create an ObjectInputStream for the file we created before ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeByte(111); geek_outStream.writeShort(121212); geek_outStream.flush(); // Use of readUnsignedByte() System.out.println("readUnsignedByte() : " + Geek_inStream.readUnsignedByte()); // Use of readUnsignedShort() : System.out.println("readUnsignedShort() : " + Geek_inStream.readUnsignedShort()); } }
- Излаз :
readUnsignedByte() : 111
readUnsignedShort() : 55676
- реадУТФ() : јава.ио.ОбјецтИнпутСтреам.реадУТФ() чита стринг у модификованом УТФ-8 (Уницоде Трансформатион Формат) формату. УТФ -8 значи да користи 8-битне блокове за представљање знака.
Синтакса:
public String readUTF()Java
Parameters :
public final Object readObject()
Return :
reads String in modified UTF-8 (Unicode Transformation Format) format
Exception :
-> IOException : in case of any IO error occurs.
// Java program explaining the working of readUTF() import java.io.*; public class// Java program explaining the working of readUTF() import java.io.*; public class NewClass { public static void main(String[] args) throws IOException ClassNotFoundException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeUTF("gEEKSArehERE"); geek_outStream.flush(); // Use of readUTF() method System.out.println("Use of readUTF() : " + Geek_inStream.readUTF()); } }
- Излаз :
Use of readUTF() : gEEKSArehERE
- скипБитес(инт маклен) : јава.ио.ОбјецтИнпутСтреам.скипБитес(инт маклен) прескаче 'маклен' бр. бајтова током читања.
Синтакса:
public int skipBytes(int maxlen)Java
Parameters :
maxlen : max. no. of bytes to be skipped
Return :
no. of bytes to be skipped
Exception :
-> IOException : in case of any IO error occurs.
// Java program explaining the working of skipBytes() import java.io.*; public class NewClass { public static void main(String[] args) throws IOException ClassNotFoundException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeUTF("gEEKSArehERE"); geek_outStream.flush(); // Use of skipBytes() : Geek_inStream.skipBytes(7); for (int i = 2; i < Geek_inStream.available(); i++) { System.out.print((char) Geek_inStream.readByte()); } } }
- Излаз :
Are
- реадФулли(бите[] одредиште) : јава.ио.ОбјецтИнпутСтреам.реадФулли(бите[] одредиште) чита све бајтове од извора до одредишног низа.
Синтакса:
public void readFully(byte[] destination)Java
Parameters :
destination : the buffer in which the data is to be read
Return :
returns the 32 bit float read
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if End of stream is reached
// Java program explaining the working of readFully() import java.io.*; public class NewClass { public static void main(String[] args) throws IOException ClassNotFoundException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeUTF("gEEKSArehERE"); geek_outStream.flush(); byte[] destination = new byte[14]; // Use of readFully() Geek_inStream.readFully(destination); String str = new String(destination); System.out.println("Use of readFully(destination offset maxlen) : "+str); } }
- Излаз :
Use of readFully(destination offset maxlen) : gEEKSArehERE
- реадФулли(бите[] одредиште инт оффсет инт маклен) : јава.ио.ОбјецтИнпутСтреам.реадФулли(бите[] одредиште инт оффсет инт маклен) чита неке бајтове (почевши од помака до максималне позиције) од извора до одредишног низа.
Синтакса:
public void readFully(byte[] destination int offset int maxlen)Java
Parameters :
destination : the buffer in which the data is to be read
offset : starting position of the buffer
maxlen : max no. of bytes to be read
Return :
void
Exception :
-> IOException : in case of any IO error occurs.
-> EOFException : if End of stream is reached
// Java program explaining the working of // readFully(byte[] destination int offset int maxlen) import java.io.*; public class NewClass { public static void main(String[] args) throws IOException ClassNotFoundException { // create a new file with an ObjectOutputStream and ObjectInputStream FileOutputStream geek_out = new FileOutputStream("GEEKS.txt"); ObjectOutputStream geek_outStream = new ObjectOutputStream(geek_out); ObjectInputStream Geek_inStream = new ObjectInputStream(new FileInputStream("GEEKS.txt")); geek_outStream.writeUTF("gEEKSArehERE"); geek_outStream.flush(); byte[] destination = new byte[14]; // Use of readFully(byte[] destination int offset int maxlen) Geek_inStream.readFully(destination 3 7); String str = new String(destination); System.out.println("Use of readFully(destination offset maxlen) : "+ str); } }
- Излаз :
Use of readFully(destination offset maxlen) : geeks
Креирај квиз