将输入流InputStream转换为String

Posted on 2013-11-25 15:00  炫谷  阅读(62190)  评论(4编辑  收藏  举报
 1 public static String convertStreamToString(InputStream is) {      
 2         /*  
 3           * To convert the InputStream to String we use the BufferedReader.readLine()  
 4           * method. We iterate until the BufferedReader return null which means  
 5           * there's no more data to read. Each line will appended to a StringBuilder  
 6           * and returned as String.  
 7           */     
 8          BufferedReader reader = new BufferedReader(new InputStreamReader(is));      
 9          StringBuilder sb = new StringBuilder();      
10      
11          String line = null;      
12         try {      
13             while ((line = reader.readLine()) != null) {      
14                  sb.append(line + "\n");      
15              }      
16          } catch (IOException e) {      
17              e.printStackTrace();      
18          } finally {      
19             try {      
20                  is.close();      
21              } catch (IOException e) {      
22                  e.printStackTrace();      
23              }      
24          }      
25      
26         return sb.toString();      
27      } 

 二、推荐一个jar包,用来转换InputStream到String,代码示例如下:

1 // 引入apache的io包
2 import org.apache.commons.io.IOUtils;
3 
4 InputStream in = con.getInputStream();
5 String result = IOUtils.toString(in, "UTF-8");

 

Copyright © 2024 炫谷
Powered by .NET 8.0 on Kubernetes