java对象和byte数组互转,直接拿去用

原创 2017年01月03日 13:58:12
//加了了Optional防止空指针异常,加入了泛型,省去了强制转化
import java.io.*;
import java.util.Optional;

/**
 * Created by Jason on 2017/1/3.
 */
public class ByteArrayUtils {

    public static<T> Optional<byte[]> objectToBytes(T obj){
        byte[] bytes = null;
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        ObjectOutputStream sOut;
        try {
            sOut = new ObjectOutputStream(out);
            sOut.writeObject(obj);
            sOut.flush();
            bytes= out.toByteArray();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return Optional.ofNullable(bytes);
    }

    public static<T> Optional<T> bytesToObject(byte[] bytes) {
        T t = null;
        ByteArrayInputStream in = new ByteArrayInputStream(bytes);
        ObjectInputStream sIn;
        try {
            sIn = new ObjectInputStream(in);
            t = (T)sIn.readObject();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return Optional.ofNullable(t);

    }
}

java中对象与字节数组相互转换

1.首先对象要继承Serializable接口 将字节转换为对象 public static Object ByteToObject(byte[] bytes) { Object obj...
  • hao00zzb
  • hao00zzb
  • 2012年03月22日 14:25
  • 28714

JAVA 对象 & byte数组之间转化

JAVA 对象 & Byte数组之间转化示例
  • pistolove
  • pistolove
  • 2016年12月27日 18:09
  • 4868

关于将Java中序列化对象写入byte[]遇到的一些问题及解决方法

在做Android开发,想用XMPP的package传递数据时,首先只能传递基本类型
  • wangfei_leo
  • wangfei_leo
  • 2014年11月06日 13:10
  • 1702

java对象与byte[]数组之间的相互转化,压缩解压缩操作

下面介绍一下java对象之间和byte[]数组之间的相互转化。并对byte[]数据进行压缩操作。java对象转化为byte[]数组可用于redis中实现缓存。(这里暂不做介绍).话不多说直接开实例: ...
  • NsdnResponsibility
  • NsdnResponsibility
  • 2016年03月31日 17:43
  • 11417

Java 字节数组类型(byte[])与int类型互转

public class CommonUtils { //高位在前,低位在后 public static byte[] int2bytes(int num){ byte[] result = ...
  • a19881029
  • a19881029
  • 2013年10月30日 11:06
  • 9120

Java byte数组与十六进制字符串互转

Java 加密解密基础 Java byte数组与十六进制字符串互转 Java BASE64加密解密 Java 加密解密之消息摘要算法(MD5 SHA MAC) Java 加密解密之对称加密算法...
  • aubdiy
  • aubdiy
  • 2016年05月27日 23:23
  • 607

Java byte数组与十六进制字符串互转

Java 加密解密基础 Java byte数组与十六进制字符串互转 Java BASE64加密解密 Java 加密解密之消息摘要算法(MD5 SHA MAC) ...
  • JIESA
  • JIESA
  • 2016年11月14日 17:48
  • 1023

Java byte数组与十六进制字符串互转

字符串转换成十六进制字符串方法1:   /**       * 字符串转换成十六进制字符串      */       public static String str2HexStr(St...
  • u010082100
  • u010082100
  • 2017年06月09日 09:51
  • 140

密码学2——Java byte数组与十六进制字符串互转

Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示。 所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的...
  • xcy13638760
  • xcy13638760
  • 2014年12月15日 15:14
  • 545

java中int与byte数组互转代码详细分析

在java中,可能会遇到将int转成byte[]数组,或者将byte[]数组转成int的情况。下面我们来思考下怎么实现? 首先,分析int在java内存中的存储格式。 众所周知,int类型在内存中占4...
  • tang9140
  • tang9140
  • 2015年02月02日 09:01
  • 5287
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java对象和byte数组互转,直接拿去用
举报原因:
原因补充:

(最多只允许输入30个字)