1.String to InputStream

String str = "String与InputStream相互转换";

InputStream   in_nocode   =   new   ByteArrayInputStream(str.getBytes());   

InputStream   in_withcode   =   new   ByteArrayInputStream(str.getBytes("UTF-8"));  

 

2.InputStream to String

这里提供几个方法。

方法1:

public String convertStreamToString(InputStream is) {   
BufferedReader reader = new BufferedReader(new InputStreamReader(is));   
        StringBuilder sb = new StringBuilder();   
        String line = null;   
        try {   
            while ((line = reader.readLine()) != null) {   
                sb.append(line + "/n");   
            }   
        } catch (IOException e) {   
            e.printStackTrace();   
        } finally {   
            try {   
                is.close();   
            } catch (IOException e) {   
                e.printStackTrace();   
            }   
        }   
        return sb.toString();   
    }

 

方法2:

public String inputStream2String (InputStream in) throws IOException { 
        StringBuffer out = new StringBuffer(); 
        byte[] b = new byte[4096]; 
        for (int n; (n=in.read(b))!=-1;)   { 
                out.append(new String(b,0,n)); 
        } 
        return out.toString(); 
}

 

方法3:

public static String inputStream2String(InputStream is) throws IOException{ 
        ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
        int i=-1; 
        while((i=is.read())!=-1){ 
        baos.write(i); 
        } 
       return baos.toString(); 
}