Java 将输入流转换为位图
我无法将输入流从web转换为位图。仅当输入图像类型为.BMP(位图)时才会出现问题。在这种情况下:bitmapFactory.decodeStream返回null 有没有提示如何解决这个问题,或者我应该在哪里继续调试 平台:安卓(蜂窝)Java 将输入流转换为位图,java,android,multithreading,inputstream,android-3.0-honeycomb,Java,Android,Multithreading,Inputstream,Android 3.0 Honeycomb,我无法将输入流从web转换为位图。仅当输入图像类型为.BMP(位图)时才会出现问题。在这种情况下:bitmapFactory.decodeStream返回null 有没有提示如何解决这个问题,或者我应该在哪里继续调试 平台:安卓(蜂窝) 谢谢@Amir指出日志。发现一行: decoder->decode returned false 这似乎是一个常见的问题。通过搜索,我找到了一个解决方案 我以前的代码: URLConnection conn = url.openConnection();
谢谢@Amir指出日志。发现一行:
decoder->decode returned false
这似乎是一个常见的问题。通过搜索,我找到了一个解决方案
我以前的代码:
URLConnection conn = url.openConnection();
conn.connect();
inputStream = conn.getInputStream();
bufferedInputStream = new BufferedInputStream(inputStream);
bmp = BitmapFactory.decodeStream(bufferedInputStream);
HttpGet httpRequest = null;
try {
httpRequest = new HttpGet(url.toURI());
} catch (URISyntaxException e) {
e.printStackTrace();
}
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = (HttpResponse) httpclient.execute(httpRequest);
HttpEntity entity = response.getEntity();
BufferedHttpEntity bufHttpEntity = new BufferedHttpEntity(entity);
InputStream instream = bufHttpEntity.getContent();
bmp = BitmapFactory.decodeStream(instream);
正在工作的代码:
URLConnection conn = url.openConnection();
conn.connect();
inputStream = conn.getInputStream();
bufferedInputStream = new BufferedInputStream(inputStream);
bmp = BitmapFactory.decodeStream(bufferedInputStream);
HttpGet httpRequest = null;
try {
httpRequest = new HttpGet(url.toURI());
} catch (URISyntaxException e) {
e.printStackTrace();
}
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = (HttpResponse) httpclient.execute(httpRequest);
HttpEntity entity = response.getEntity();
BufferedHttpEntity bufHttpEntity = new BufferedHttpEntity(entity);
InputStream instream = bufHttpEntity.getContent();
bmp = BitmapFactory.decodeStream(instream);
这里有一个简单的答案
val bitmap = BitmapFactory.decodeStream(inputStream)
返回一个
位图
是否有任何日志错误可以提供帮助?我使用WCF服务,当我发送图像的字节[]并使用您的方法转换回位图图像时,但是BitmapFactory.decodeStream(instream)始终为空!!例如,您可以随意使用它来获取本地图像