La clase StreamCorruptedException de ObjectStreamException es una excepción que se produce cuando la información de control que se leyó de un flujo de objetos infringe las comprobaciones de coherencia interna. Creará una StreamCorruptedException y enumerará una razón por la que se lanzó la excepción. Si no se pasan parámetros en el constructor, se creará una excepción StreamCorruptedException y no se indicará el motivo por el que se lanzó la excepción.
Sintaxis:
public StreamCorruptedException(String reason)
Parámetros: motivo – “String” que describe el motivo de la excepción
Ejemplo 1:
Java
// Java program to Illustrate StreamCorruptedException // Importing required classes import java.io.*; import java.io.DataInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.StreamCorruptedException; // Main class class GFG { // Main driver method public static void main(String[] args) throws Exception { // Creating an object of InputStream class InputStream in = new FileInputStream("testout.txt"); // Representing input object in form of string DataInputStream dis = new DataInputStream(in); // Writing the data // Try block to check if exception occurs try { // readByte will read single byte from the file if (dis.readByte() != 1) { throw new StreamCorruptedException( "File format not recognised"); // If file contains NULL in first byte // then exception will be thrown } } // Catch block 1 // Handling stream corrupted exception catch (StreamCorruptedException e) { // Display message on console if // StreamCorruptException occurs System.out.println(e); } // Catch block 2 // Handling basic I/O exception catch (Exception e) { // If EOF exception or any other exception // occurs System.out.println(e); } } }
Producción:
java.io.StreamCorruptedException: File format not recognised
Ahora deteniéndonos en el segundo ejemplo donde se reconoce el formato de archivo. Es como sigue, para lo cual lea la nota de muestra a continuación antes de la implementación.
Nota: Cree el archivo C098.txt en la misma carpeta del programa y copie el siguiente fragmento tal cual. Es un ejemplo de archivo corrupto.
C098.txt
’ sr Product L desct Ljava / lang / String; L priceq ~ L productIdq ~ xpt Bookt Rs .200t P001’ sr Product L desct Ljava / lang / String; L priceq ~ L productIdq ~ xpt Laptopt Rs .45, 500t P087
Ejemplo 2:
Java
// Java program to Illustrate StreamCorruptedException // Importing required classes import java.io.*; import java.util.*; // Main class // To illustrate object stream exception class GFG { // Main driver method public static void main(String args[]) throws Exception { // Text in file is stored as a string String CId = "C098.txt"; File objFile1 = new File(CId); // Try block to check fo exception try { // Creating an object of FileInputStream class FileInputStream objFIS = new FileInputStream(objFile1); // Creating an object of ObjectInputStream class ObjectInputStream objI = new ObjectInputStream(objFIS); Object obj = null; } // Catch block 1 // Handling stream corrupted exception catch (StreamCorruptedException ex) { // Display this message as exception is caught System.out.println( "Stream Corrupted Exception Occurred"); } // Catch block 2 // Handling basic I/O exceptions catch (Exception e) { // Print statement System.out.println("Hello"); } } }
Producción:
Stream Corrupted Exception Occurred
Publicación traducida automáticamente
Artículo escrito por shantanujain18 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA