網頁

2020/4/4

Java convert InputStream to String

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 IOIOUtils

public static String convertToString(final InputStream inputStream) throws IOException {
    return IOUtils.toString(inputStream, StandardCharsets.UTF_8);
}


參考:

沒有留言:

張貼留言