关闭

java中把对象转化为byte数组的方法

10485人阅读 评论(4) 收藏 举报

首先对象要继承Serializable接口

    private static java.lang.Object ByteToObject(byte[] bytes){
        java.lang.Object obj;
        
try {
        
//bytearray to object
        ByteArrayInputStream bi = new ByteArrayInputStream(bytes);
        ObjectInputStream oi 
= new ObjectInputStream(bi);

        obj 
= oi.readObject();

        bi.close();
        oi.close();
        }

        
catch(Exception e) {
            System.out.println(
"translation"+e.getMessage());
            e.printStackTrace();
        }

        
return obj;
    }

 

    public byte[] ObjectToByte(java.lang.Object obj)
    
{
        
byte[] bytes;
        
try {
            
//object to bytearray
            ByteArrayOutputStream bo = new ByteArrayOutputStream();
            ObjectOutputStream oo 
= new ObjectOutputStream(bo);
            oo.writeObject(obj);

            bytes 
= bo.toByteArray();

            bo.close();
            oo.close();    
        }

        
catch(Exception e) {
            System.out.println(
"translation"+e.getMessage());
            e.printStackTrace();
        }

        
return(bytes);
    }

这里都是java.lang.Object是因为我要用于Corba中,只写Object会引起类型冲突。

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2355621次
    • 积分:22472
    • 等级:
    • 排名:第337名
    • 原创:300篇
    • 转载:187篇
    • 译文:20篇
    • 评论:519条
    最新评论
    个人链接