亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java對象怎么轉byte數組

小億
244
2024-01-26 22:14:16
欄目: 編程語言

要將Java對象轉換為byte數組,你可以使用Java的序列化和反序列化機制。以下是一個示例代碼,其中將一個名為obj的Java對象轉換為byte數組:

import java.io.ByteArrayOutputStream;
import java.io.ObjectOutputStream;
import java.io.IOException;

public class ObjectToByteArray {
    public static byte[] convertToByteArray(Object obj) throws IOException {
        ByteArrayOutputStream byteOutStream = new ByteArrayOutputStream();
        ObjectOutputStream objOutStream = new ObjectOutputStream(byteOutStream);
        objOutStream.writeObject(obj);
        objOutStream.flush();
        byte[] byteArray = byteOutStream.toByteArray();
        byteOutStream.close();
        objOutStream.close();
        return byteArray;
    }

    public static void main(String[] args) {
        try {
            // 創建一個示例對象
            MyClass obj = new MyClass("Hello World");

            // 將對象轉換為byte數組
            byte[] byteArray = convertToByteArray(obj);

            // 打印byte數組
            for (byte b : byteArray) {
                System.out.print(b + " ");
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

class MyClass implements java.io.Serializable {
    private String message;

    public MyClass(String message) {
        this.message = message;
    }

    public String getMessage() {
        return message;
    }
}

在上述示例代碼中,convertToByteArray方法將Java對象轉換為byte數組。首先,創建一個ByteArrayOutputStream對象和一個ObjectOutputStream對象,用于將對象序列化為字節流。然后,調用writeObject方法將對象寫入字節流,再使用toByteArray方法將字節流轉換為byte數組。最后,關閉流并返回byte數組。

main方法中,我們創建了一個示例對象MyClass,并調用convertToByteArray方法將其轉換為byte數組。最后,使用循環打印byte數組。

請注意,要將一個Java對象轉換為byte數組,必須確保該對象實現了Serializable接口。

0
集安市| 久治县| 潜江市| 天全县| 泽普县| 长白| 贵港市| 昌宁县| 北海市| 庆元县| 凤山县| 荆州市| 崇信县| 华安县| 凭祥市| 正宁县| 原平市| 夏津县| 华容县| 茂名市| 达尔| 高雄市| 文化| 武清区| 富平县| 镇宁| 田东县| 邵阳县| 黑龙江省| 柳河县| 大兴区| 定日县| 汕尾市| 沧州市| 嘉峪关市| 忻城县| 安图县| 永仁县| 延寿县| 防城港市| 湾仔区|