Java 把InputStream
轉換成String
的方法如下
方法一,使用ByteArrayOutputStream
。
public static String convertToString(final InputStream inputStream) throws IOException {
BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
int result;
while((result = bufferedInputStream.read()) != -1) { // 從輸入串流讀取資料
byteArrayOutputStream.write((byte) result); // 將讀取的資料寫出至輸出串流
}
return byteArrayOutputStream.toString(StandardCharsets.UTF_8);
}
方法二,使用Apache Commons IO的IOUtils
public static String convertToString(final InputStream inputStream) throws IOException {
return IOUtils.toString(inputStream, StandardCharsets.UTF_8);
}
參考:
沒有留言:
張貼留言