如何在java中把InputStream转换为Reader?

问题描述 投票:0回答:1
  1. reader = new BufferedReader(new InputStreamReader(inputStream))
  2. reader = new InputStreamReader(new BufferedInputStream(inputStream))

哪个更好,为什么?

java stream reader buffered
1个回答
0
投票

解决方案1更有效率。

BufferedReader可以比InputStreamReader有更大的缓冲区。

此外,有了 BufferedReader 你有方便 readline 方法。


0
投票

千万不要创建一个 Reader 而不提供编码。正如 @CodeScale 已经提到的,第一个选项更好,因为你利用了 BufferedReader 较好,其方便方法。

   reader = new BufferedReader(new InputStreamReader(inputStream), StandardCharsets.UTF_8);

0
投票

方案1更有效率。

BufferedReader将从Reader中读取一个字符块(通常是进入一个char数组),read()方法将从内部数组中返回数据。

© www.soinside.com 2019 - 2024. All rights reserved.