91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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
双城市| 偏关县| 永康市| 九寨沟县| 湟中县| 观塘区| 乐业县| 长汀县| 安塞县| 印江| 北安市| 潼南县| 桑日县| 唐海县| 汪清县| 淮北市| 大余县| 南岸区| 西华县| 广德县| 安阳县| 花垣县| 南通市| 南和县| 潼关县| 施甸县| 平阴县| 玛曲县| 崇阳县| 阳泉市| 乐都县| 瑞安市| 裕民县| 雷州市| 同德县| 永康市| 湄潭县| 丰台区| 梓潼县| 甘孜| 永清县|