我已将图片从网址下载到SD卡。它在sd卡中显示为正常的缩略图图像,但是当我单击它以查看它时,会显示一条消息Could not load image
,图像也无法在imageview中显示。在Async Task的帮助下下载了该映像。现在我想首先检查图像是否可显示。如果没有删除它并重新下载。
下载图片的代码:
protected Void doInBackground(String... params) {
try{
String fileName = params[0].substring(params[0].lastIndexOf('/') + 1);
URL url = new URL(params[0]);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setDoOutput(true);
urlConnection.connect();
File file = new File(SwipeActivity.filename,fileName);
FileOutputStream fileOutput = new FileOutputStream(file);
InputStream inputStream = urlConnection.getInputStream();
byte[] buffer = new byte[1024];
int bufferLength = 0;
while ( (bufferLength = inputStream.read(buffer)) > 0 )
{
fileOutput.write(buffer, 0, bufferLength);
}
fileOutput.close();
}
catch (Exception e) {
// TODO: handle exception
}
return null;
}
提前感谢任何帮助。
答案 0 :(得分:0)
您可以尝试检查图片是否可以在Gallery应用中构建中显示。我有这个问题,因为它似乎是通常的PNG图像,诀窍是它不是RGB图片,而是CMYK颜色格式。输出类似于你的,android没有直接显示CMYK图像