现在的位置: 首页 > 综合 > 正文

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

2013年06月19日 ⁄ 综合 ⁄ 共 1118字 ⁄ 字号 评论关闭

首先对象要继承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会引起类型冲突。

 

抱歉!评论已关闭.