Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Android中将字节转换为字符串_Java_Android - Fatal编程技术网

Java 在Android中将字节转换为字符串

Java 在Android中将字节转换为字符串,java,android,Java,Android,以前我使用下面的方法将位图图像转换为字符串 public String getStringImage(Bitmap bmp) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos); byte[] imageBytes = baos.toByteArray(); String encodedIma

以前我使用下面的方法将
位图
图像转换为
字符串

public String getStringImage(Bitmap bmp) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos);
    byte[] imageBytes = baos.toByteArray();

    String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
    return encodedImage;
}
但是现在我有了一个字节形式的
文件
,我想从中得到这个文件的
字符串

我试过了

public String getStringbytes(byte[] buffer) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    buffer.compress(Bitmap.CompressFormat.JPEG, 100, baos);// this is the error
    byte[] imageBytes = baos.toByteArray();

    String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
    return encodedImage;
}

如何将传递给该方法的字节转换为
字符串
?换言之,我如何修改之前压缩
位图
图像的部分,以捕获要转换为
字符串的字节?

转换
字节[]
是否通过位图并将新位图传递给第一个方法?

我不确定您的确切要求,但如果您的要求是:

“我有一个函数,它将位图作为输入,并通过执行以下转换步骤返回字符串:位图-->字节[]-->base64字符串

但我还需要一个函数,该函数将字节数组作为输入,并通过以下转换步骤返回字符串:Byte[]-->base64 String”

然后试试这个:

public String getStringbytes(byte[] buffer) {

String encodedImage = Base64.encodeToString(buffer, Base64.DEFAULT);
return encodedImage;

}

在第二个函数中“用JPEG压缩
字节[]
缓冲区”是什么意思?这可能会帮助您在代码中没有文件。您是在问如何将字节转换为字符串还是将bytearray转换为base64编码的字符串?您已经在代码中介绍了如何进行压缩,那么您的实际问题是什么?为什么要再次压缩jpeg?它还没有被压缩吗?只有当
字节[]
包含图像时才压缩。@Henry这是算法本身的先决条件。如果不是这样,编纂成JPG将是毫无意义的。