ByteCode表示为byte []

时间:2015-10-01 10:04:37

标签: java bytearray

如果我这样做:

img.getImageBytes(); /*returns byte[] from image */

如何使用表示该byte []的字符串进行反转?

2 个答案:

答案 0 :(得分:1)

BufferedImage yourImage = ImageIO.read(new ByteArrayInputStream(bytes_array_of_image));

答案 1 :(得分:1)

我不知道你是如何打印字节数组的。但假设您使用的是toString()方法或Arrays.toString()方法。

然后,您获取byte[]的字符串表示形式,剥离前导[并展开]并将其,拆分为String[]。现在创建一个与byte[]大小相同的新String[]。然后迭代String[]并转换每个元素并添加到byte[]。实施例

    byte[] b = {1, 2, 3, 4, 5}; //Initial byte array also can be gotten from any other source
    String s = b.toString(); //[1, 2, 3, 4, 5]

    String[] sa = s.substring(1, s.length() - 1).split(",");
    byte[] ba = new byte[sa.length];

    for(int i = 0; i < ba.length; i++) {
        ba[i] = Byte.valueOf(sa[i].trim());
    }

    //Now ba should contain 1, 2, 3, 4, 5