An InputStream
代表字节流。这些字节不一定形成可以逐行读取的(文本)内容。
如果您知道InputStream
可以将解释为文本,则可以将其包装在中InputStreamReader
并用于BufferedReader#lines()
逐行使用它。
try (InputStream resource = Example.class.getResourceAsStream("resource")) {
List<String> doc =
new BufferedReader(new InputStreamReader(resource,
StandardCharsets.UTF_8)).lines().collect(Collectors.toList());
}