【问题标题】:Image to Byte Array to String (and vice versa)图像到字节数组到字符串(反之亦然)
【发布时间】:2011-07-02 07:49:51
【问题描述】:

我想将图像转换为字节数组,然后将该字节数组转换为字符串。另外,我想将该字符串转换回字节数组,最后转换回图像。我该怎么做呢?任何帮助将不胜感激。

【问题讨论】:

标签: java image-processing bytearray inputstream


【解决方案1】:
  1. 使用ImageIO.write(..) 并传递ByteArrayOutputStream。然后调用stream.toByteArray() - 你有字节。

  2. 使用 base64 或十六进制将字节数组表示为字符串 - commons-codec 具有 Base64Hex,它们允许双向转换。所以现在你有了字符串

  3. 参见 2 - 从字符串转换为字节数组。现在您又拥有了byte[]

  4. 使用ImageIO.read(..) 并传递new ByteArrayInputStream(bytes)

(对于第 2 点和第 3 点,您可以使用 new String(bytes, "utf-8")string.getBytes("utf-8"),但更喜欢 base64)

【讨论】:

  • programcreek.com/2009/02/… 喜欢这样吗?但我使用的是 jdk 6 但我找不到类 ImageIO !!
  • @adham - javax.imageio.ImageIO。使用 IDE 组织您的导入,它会立即找到它。
  • @adham - 是的,与链接中显示的完全一样。只是不要使用com.sun..internal - 获取 apache commons-codec。
  • @adham - 你导入了吗.. ?
猜你喜欢
  • 2012-03-06
  • 2011-05-18
  • 2010-11-10
  • 1970-01-01
  • 1970-01-01
  • 2019-02-14
  • 2014-04-16
  • 1970-01-01
相关资源
最近更新 更多