InputStream 을 String 으로 변환하기


1. ByteArrayOutputStream 을 이용한 방법


InputStream is = null;
BufferedInputStream bis = null;
int size = 10240;
try {
	is = result.getEntity().getContent();
	bis = new BufferedInputStream(is);
	byte[] buffer = new byte[size];
	while ((bis.read(buffer)) != -1) {
		body += new String(buffer, "utf-8");
	}
} catch (IllegalStateException e) {
	e.printStackTrace();
} catch (IOException e) {
	e.printStackTrace();
}	



2. StringBuffer 를 이용한 방법 


 
int i;
InputStream is = new FileInputStream("C:/file.txt");
StringBuffer buffer = new StringBuffer();
byte[] b = new byte[4096];
while( (i = is.read(b)) != -1){
 buffer.append(new String(b, 0, i));
}
String str = buffer.toString();



3. BufferedReader 를 사용하는 방법


 
URL feedUrl = new URL(feed);
InputStream is = feedUrl.openConnection().getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer response = new StringBuffer(); 
while((line = rd.readLine()) != null) {
 response.append(line);
 response.append('\r');
}
rd.close();


String을 InputStream 으로 변환하기


 
String text = "가나다라 abcd";
InputStream inputStream = new ByteArrayInputStream(text.getBytes("UTF-8"));


+ Recent posts