[英]Android: Get height/width from byte array or file
我有一个存储为字节数组的图像(也可以从Android目录中以.jpg格式访问),并且我正在尝试获取图像的宽度和高度。 我尝试使用javax.imageio,但是Dalvik不支持此库,因此我选择使用Bitmap。 有人可以帮我从这里出去吗? 我不断收到Null指针异常。
public int getWidth(byte[] image) throws IOException{
Bitmap bitmapImage = BitmapFactory.decodeFile(image.toString());
int imageWidth = bitmapImage.getWidth();
return imageWidth;
}
干杯。
您可以尝试使用decodeByteArray(image)
而不是decodeFile(new String(image))
。 剩下的信息以备将来参考:
toString()
不适用于数组(它返回一些随机的字符串)。 由于您将无效的字符串传递给decodeImage
,因此它返回null
以指示未找到它。 因此,如果在其上调用方法,则将导致NullPointerException
。 如果字节数组是使用字符集编码的,而不是使用image.toString()
,请使用new String(image)
来正确解码字节数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.