从后台java中获取服务器图片数据(方法如下):
URL url = new URL("");正常情况下,到这里已经能够获取数据流,再对数据流进行操作就可以了。
HttpURLConnection conn =(HttpURLConnection)url.openConnection();
InputStream inputStream=conn.getInputStream();
但是,在实际操作中发现:对于bmp格式的图片数据,在将数据流转为图片之后,图片出现了错位。
在使用inputStream.available()获取数据大小时,发现每调用一次,显示的结果都不同(原来对于bmp这种图片,由于没有压缩,导致数据比较大,采用分块传输)。
//检查是否传输完成到此,图片就能够正常显示。
while(true){
length=inputStream.available();
if(length==inputStream.available()){
times++;
if(times==4)
break;
}else{
continue;
}
}
int n = 0;// 每次读取的字节长度
byte[] bb = new byte[1024];// 存储每次读取的内容
sun.misc.BASE64Encoder encoder= new sun.misc.BASE64Encoder();
while((n = inputStream.read(bb)) != -1){
buffer.append(encoder.encode(bb));
}
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。