gpt4 book ai didi

java - 解码 Google App Engine 上作为电子邮件收到的 Base64 图像

转载 作者:行者123 更新时间:2023-12-01 15:10:58 26 4
gpt4 key购买 nike

我想要解码 Google App Engine(GAE) 上通过电子邮件收到的 Base64 编码图像。当我从 MimeMessage 中提取图像时,我得到一个 base64DecoderStream 对象。我最初假设这个解码后的数据是 ARGB 格式的字节数组,但这里似乎并非如此。我通过将解码的字节数组与运行“ImageIO.read(ImageFile).getRGB()”获得的字节数组进行比较来验证这一点,但它们不匹配。

所以我想知道:-

1) 使用base64解码图像后得到哪种图像格式数据?

2) 如何在 GAE 上获取实际的 PNG 或 JPG 图像?

3)最后,有没有办法在GAE上获取收到的ARGB格式的电子邮件图像?

非常感谢任何帮助...谢谢

最佳答案

Base64编码的数据是图像文件本身,而不是解压后的像素数据。这是附加到邮件的实际文件。因此,在解码 Base64 数据后,在这种特殊情况下,您将获得一个二进制 PNG 文件。

要将其作为图像进行操作,您有多种选择:

  1. 将解码后的byte[]直接传递给ImagesServiceFactory.makeImage()
  2. 将解码后的byte[]写入文件并调用ImagesServiceFactory.makeImageFromFilename()
  3. 将解码后的 byte[] 作为 Blob 存储到数据库中,然后调用 ImagesServiceFactory.makeImageFromBlob()

完成此操作后,不幸的是,似乎没有一种简单的方法可以使用 Google 的内置 API 获取 ARGB 数据。这里讨论的解决方案可能会有所帮助:Extracting image pixel values in google appengine .

关于java - 解码 Google App Engine 上作为电子邮件收到的 Base64 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12375806/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com