當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Byte Array轉Object用法及代碼示例


將字節數組轉換為對象以及將對象轉換為字節數組的過程稱為反序列化和序列化。進行序列化/反序列化的類對象必須實現 Serialized 接口。

  • Serializable 是包下的標記接口‘java.io.Serialized’。
  • 字節數組:字節數組僅用於存儲字節數據類型值。字節數組中元素的默認值為 0。
  • Object: 用戶定義的數據類型。

對於序列化/反序列化,我們使用類 SerializationUtils。

方法(使用SerializationUtils類)

  • 序列化和反序列化是該類的兩個主要函數。
  • 這個類屬於包‘org.apache.commons.lang3'。

序列化(將對象轉換為字節數組)

句法:

public static byte[] serialize(Serializable object)

參數:用戶想要序列化的對象。

Returns: 函數將返回字節數組。

反序列化(將字節數組轉換為對象)

句法:

public static Object deserialize(byte[] objectByteArray)

參數:序列化字節數組。

Returns: 函數將返回對象。

例子:

Java


// Java Program to Convert Byte Array to Object 
import java.io.*; 
import org.apache.commons.lang3.*; 
  
class gfgStudent implements Serializable { 
    public int rollNumber; 
    public String name; 
    public char gender; 
  
    public gfgStudent(int rollNumber, String name, 
                      char gender) 
    { 
        this.rollNumber = rollNumber; 
        this.name = name; 
        this.gender = gender; 
    } 
} 
  
class gfgMain { 
    public static void main(String arg[]) 
    { 
        gfgStudent student; 
        student = new gfgStudent(101, "Harsh", 'M'); 
  
        // converting Object to byte array 
        // serializing the object of gfgStudent class 
        // (student) 
        byte byteArray[] 
            = SerializationUtils.serialize(student); 
  
        gfgStudent newStudent; 
  
        // converting byte array to object 
        // deserializing the object of gfgStudent class 
        // (student) the function will return object of 
        // Object type (here we are type casting it into 
        // gfgStudent) 
        newStudent 
            = (gfgStudent)SerializationUtils.deserialize( 
                byteArray); 
  
        System.out.println("Deserialized object"); 
        System.out.println(newStudent.rollNumber); 
        System.out.println(newStudent.name); 
        System.out.println(newStudent.gender); 
    } 
}

輸出:



相關用法


注:本文由純淨天空篩選整理自sharmaharsh_05大神的英文原創作品 Java Program to Convert Byte Array to Object。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。