gpt4 book ai didi

java - 如何在android中将图像转换为十六进制字符串?

转载 作者:搜寻专家 更新时间:2023-11-01 08:10:08 26 4
gpt4 key购买 nike

我需要将图像转换为十六进制字符串以将其发送到网络服务器。我正在使用这种方法将图像转换为字节数组

         BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 8;
Bitmap receipt = BitmapFactory.decodeFile(photo.toString(),options);
int size = receipt.getRowBytes() * receipt.getHeight();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
receipt.compress(Bitmap.CompressFormat.JPEG, 90, stream);
receiptbyte = stream.toByteArray();
String hexstring = toHex(receiptbyte);

并将其转换为十六进制

   public static String toHex(byte[] bytes) {
BigInteger bi = new BigInteger(1, bytes);
return String.format("%0" + (bytes.length << 1) + "X", bi);
}

我想产生这样的输出

c11ee236-8f72-4b60-9208-79977d61993f

我不知道该怎么办。我需要编码吗?

最佳答案

您拥有的字符串 c11ee236-8f72-4b60-9208-79977d61993f 不是图像 - 它看起来更像是存储在服务器上的图像的 ID。

如果您想要图像,您必须将 ID 发送到服务器,然后服务器发回存储在属于该 ID 的数据库中的图像数据。

在 Java 中,您可以自己生成这样的随机 ID:

UUID u = UUID.randomUUID();
System.out.println(u.toString());

例如输出:3aa5b32d-c6fb-43c5-80c9-78a1a35aff40

构建您自己的服务器,您可以使用它并将图像数据和此 ID 保存到数据库中。

关于java - 如何在android中将图像转换为十六进制字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10603063/

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