当前位置: 首页 > 面试题库 >

有几种方法可以将位图转换为字符串,反之亦然?

冀鸿才
2023-03-14
问题内容

在我的应用程序中,我想以字符串形式将位图图像发送到服务器,我想知道有多少种方法可以将位图转换为字符串。现在,我正在使用Base64格式进行编码和解码,它需要占用更多的内存。还有其他可能性以不同的方式做同样的事情,从而减少了内存消耗。现在我正在使用此代码。

Resources r = ShowFullImage.this.getResources();
Bitmap bm = BitmapFactory.decodeResource(r, R.drawable.col);
ByteArrayOutputStream baos = new ByteArrayOutputStream();  
bm.compress(Bitmap.CompressFormat.PNG, 100, baos); //bm is the bitmap object   
byte[] b = baos.toByteArray();

String encodedImage = Base64.encodeToString(b, Base64.DEFAULT);

问题答案:
public String BitMapToString(Bitmap bitmap){
     ByteArrayOutputStream baos=new  ByteArrayOutputStream();
     bitmap.compress(Bitmap.CompressFormat.PNG,100, baos);
     byte [] b=baos.toByteArray();
     String temp=Base64.encodeToString(b, Base64.DEFAULT);
     return temp;
}

这是将字符串转换为位图的相反过程,但字符串应为Base64编码

/**
 * @param encodedString
 * @return bitmap (from given string)
 */
public Bitmap StringToBitMap(String encodedString){
   try {
      byte [] encodeByte=Base64.decode(encodedString,Base64.DEFAULT);
      Bitmap bitmap=BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
      return bitmap;
   } catch(Exception e) {
      e.getMessage();
      return null;
   }
}


 类似资料:
  • 问题内容: 我正在生成密钥,需要将其存储在数据库中,因此我将其转换为字符串,但是要从字符串中获取密钥。有哪些可能的方法可以做到这一点? 我的代码是 如何从字符串取回密钥? 问题答案: 您可以将转换为字节数组(),然后Base64将其编码为。要转换回a ,Base64 会对String进行解码,并在a中使用它来重建您的原始字符串。 对于Java 8 字符串的SecretKey: 字符串到Secret

  • 问题内容: 我将如何使用python将IP地址转换为十进制数字,反之亦然? 例如,对于,我想使用易于存储在数据库中的十进制或二进制形式,然后检索它。 问题答案: 将IP字符串转换为长整数: 另一种方式:

  • 问题内容: 有没有办法将netty ByteBuf转换为String,反之亦然? 问题答案: 您可以使用转换为字符串。 您可以使用和转换为ByteBuf。

  • 问题内容: 我目前正在研究一种将键转换为字符串,反之亦然的方法。它适用于公钥转换,并将私钥转换为String。由于某些原因,同一代码不会将String转换回私钥,我只是无法弄清楚。 转换器代码为: 我正在使用的驱动程序代码是: 运行此命令时,我得到了不合适的密钥说明,有人可以为此指出正确的方向吗?控制台输出为: 我知道我不应该使用sun.misc。*库,我们正在研究Apache版本,但仍然想弄清楚

  • 问题内容: 我必须在Android中将字节数组转换为字符串,但是我的字节数组包含负值。 如果我再次将该字符串转换为字节数组,则得到的值与原始字节数组值不同。 我该怎么做才能正确转换?我用于执行转换的代码如下: 我陷入了这个问题。 问题答案: 你的字节数组必须具有某种编码。如果你使用负值,则编码不能为ASCII。一旦弄清楚了,就可以使用以下方法将一组字节转换为字符串: 你可以使用许多编码,请查看Su

  • 问题内容: 我正在尝试通过android将图像作为字节数组发送,并在服务器端将其转换回png文件,我正在服务器端。 这是我的android代码,它将图像转换为字节数组并将其作为请求发送到服务器: 这是我的服务器端程序: 服务器上的异常是: 问题答案: 您将图像写入客户端的文件输出流,该流会将内容存储到物理文件中。然后,您尝试将的表示形式转换为图像内容。这是行不通的,该类的方法不会为您提供写入流中的