我的资源文件夹中有一个.properties文件。我想加载该文件,但是当我使用IOUtils来读取我的文件内容时,它只会创建一个新的空文件并赢得'复制我的test.properties的内容。
try (InputStream demoTemplate =
MyClass.class
.getClassLoader()
.getResourceAsStream("/config/test.properties")
{
IOUtils.copy(demoTemplate, new FileWriter(destinationFile));
LOGGER.debug(" demo file content: " + OUtils.toString(demoTemplate));
}
我的日志输出为空,将创建文件,但它没有内容。
当我更改test.properties文件的路径时,它将导致FileNotFound
异常,因此我确定ClassLoader可以加载respurce。 test.properties
文件包含数据。
答案 0 :(得分:2)
您的日志记录输出为空,因为您已将InputStream
耗尽到目标文件中。
您的输出可能为空,因为FileWriter
从未被正确刷新或关闭。
也许你可以读取目标文件并记录它,再次打开原始源,保留输入流内容的副本,或者在传输数据时记录,但这不需要使用简单的IOUtils
帮手。