reader = new BufferedReader(new InputStreamReader(inputStream))
reader = new InputStreamReader(new BufferedInputStream(inputStream))
哪个更好,为什么?
解决方案1更有效率。
BufferedReader可以比InputStreamReader有更大的缓冲区。
此外,有了 BufferedReader
你有方便 readline
方法。
千万不要创建一个 Reader
而不提供编码。正如 @CodeScale 已经提到的,第一个选项更好,因为你利用了 BufferedReader
较好,其方便方法。
reader = new BufferedReader(new InputStreamReader(inputStream), StandardCharsets.UTF_8);
方案1更有效率。
BufferedReader将从Reader中读取一个字符块(通常是进入一个char数组),read()方法将从内部数组中返回数据。