HttpURLConnection 이미지 데이터 흐름 가져오기

871 단어 java
백그라운드 자바에서 서버 이미지 데이터를 가져오려면 다음과 같이 하십시오.
URL url = new URL("");
HttpURLConnection  conn =(HttpURLConnection)url.openConnection();
InputStream inputStream=conn.getInputStream();
정상적인 상황에서 여기까지 데이터 흐름을 얻을 수 있고 데이터 흐름을 조작하면 된다.
그러나 실제 작업에서 bmp 형식의 그림 데이터에 대해 데이터를 그림으로 옮긴 후에 그림의 위치가 틀린 것을 발견했다.
inputStream을 사용하고 있습니다.available () 은 데이터를 얻는 시간이 길고 호출할 때마다 결과가 다르다는 것을 발견했다.
          // 
          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));
        }
여기까지만 하면 그림이 정상적으로 표시됩니다.

좋은 웹페이지 즐겨찾기