【发布时间】:2018-03-20 08:50:59
【问题描述】:
以下代码有问题:
try (
InputStream is = new FileInputStream(file);
BufferedReader br = new BufferedReader(
new InputStreamReader(is,
Charset.forName(SidFileUtils.charsetDetection(is))
)
);
) {
br.readLine();
br.readLine();
for (String line = br.readLine() ; line != null ; line = br.readLine()) {
lines.add(line);
}
} catch (ExceptionTechnique | IOException e) {
LOG.error("Erreur lors de la lecture du fichier " + file.getName(), e);
}
这部分代码:Chasrset.forName(...) 给了我一个Stream Closed error。我想是因为我使用了两次InputStream 项目并且它已经被消费了但我不确定。
你能帮我理解这段代码有什么问题吗?
提前非常感谢!
【问题讨论】:
-
charsetDetection方法可能会读取流然后关闭它。
标签: java character-encoding inputstream bufferedreader