我希望将一张图片转换成字节数组,然后再将该字节数组转换为字符串。同时,我还想把这个字符串再转回字节数组,最后再转回图片。请问我该如何实现这个功能?非常感谢您的帮助。
我希望将一张图片转换成字节数组,然后再将该字节数组转换为字符串。同时,我还想把这个字符串再转回字节数组,最后再转回图片。请问我该如何实现这个功能?非常感谢您的帮助。
使用ImageIO.write(..)
并传递一个ByteArrayOutputStream
。然后调用stream.toByteArray()
-您就有了字节。
使用base64或十六进制表示字节数组作为字符串 - commons-codec有Base64
和Hex
,可以在两个方向上进行转换。现在你有了这个字符串
参见2-从字符串转换为字节数组。现在你又有了byte[]
。
使用ImageIO.read(..)
并传递一个new ByteArrayInputStream(bytes)
(对于第2和第3点,您可以使用new String(bytes, "utf-8")
和string.getBytes("utf-8")
,但最好使用base64)
javax.imageio.ImageIO
。使用IDE来组织你的导入,它会立即找到它。 - Bozhocom.sun..internal
- 获取 Apache Commons Codec。 - Bozho