从资源文件夹中读取大小超过1MB的文件时,InputStream为null

时间:2019-02-18 11:51:35

标签: java java-io

我正在尝试从资源文件夹中读取文本文件并将其保存到String变量中。但是,将文件加载到InputStream时,它会将InputStream对象返回为null。问题在于,仅当文件大于1 MB时才会抛出错误(实际上,我怀疑是这样)。我尝试使用较小的文件,并且按预期工作。

private static String getString(String filename) throws IOException {
    InputStream inputStream = TextParser.class.getClassLoader().getResourceAsStream(filename);
    if (inputStream==null) throw new NullPointerException("InputStream is null");
    final StringBuilder out = new StringBuilder();
    Reader in = new InputStreamReader(inputStream, StandardCharsets.UTF_8);
    String line;
    try (BufferedReader bufferedReader = new BufferedReader(in)) {
        while ((line = bufferedReader.readLine()) != null) {
            out.append(line);
        }
    }
    return out.toString();
}

InputStream为null,而不是有效的对象。

0 个答案:

没有答案