处理流,缓冲流,序列化工具

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_43147136/article/details/82966981

一、处理流

二、缓冲流

三个类经常用于处理数据流:

三、序列化工具:

     public class SerializeUtil {
    /**
     * 序列化
     *
     * @param object
     * @return
     */
    public static String serialize(Object object) {

        ByteArrayOutputStream bos = new ByteArrayOutputStream();

        ObjectOutputStream oos = null;

        try {

            oos = new ObjectOutputStream(bos);

            oos.writeObject(object);

            oos.flush();

            return new BASE64Encoder().encode(bos.toByteArray());

        } catch (IOException e) {

            System.out.println("序列化错误");
            e.printStackTrace();

        } finally {

            try {

                if (oos != null) {

                    oos.close();

                }

                bos.close();

            } catch (IOException e) {

                e.printStackTrace();

            }

        }

        return null;

    }


    /**
     * 反序列化
     *
     * @param object
     * @return
     */
    public static Object unserialize(String object) {

        ByteArrayInputStream bis = null;

        ObjectInputStream ois = null;

        try {

            bis = new ByteArrayInputStream(new BASE64Decoder().decodeBuffer(object));

            ois = new ObjectInputStream(bis);

            Object o = ois.readObject();

            return o;

        } catch (IOException e) {

            System.out.println("反序列化错误:IO异常");
            e.printStackTrace();

        } catch (ClassNotFoundException e) {

            System.out.println("反序列化错误:类找不到");
            e.printStackTrace();

        } finally {

            try {

                if (bis != null) {

                    bis.close();
                }
                if (ois != null) {
                    ois.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }

        }

        return null;

    }
}

猜你喜欢

转载自blog.csdn.net/qq_43147136/article/details/82966981