Java 无法将inputStream复制到文件中
我正在使用这段代码将输入流写入文件。它创建目录,但上载的文件是空的(其中没有内容)。我该怎么办Java 无法将inputStream复制到文件中,java,file,nio,Java,File,Nio,我正在使用这段代码将输入流写入文件。它创建目录,但上载的文件是空的(其中没有内容)。我该怎么办 try (InputStream inputStream = file.getInputStream()) { Path filePath = this.rootLocation.resolve(filename); File targetFile = new File(String.valueOf(filePath))
try (InputStream inputStream = file.getInputStream()) {
Path filePath = this.rootLocation.resolve(filename);
File targetFile = new File(String.valueOf(filePath));
Files.copy(inputStream, targetFile.toPath());
}
}
catch (IOException e) {
e.printStackTrace();
}
我捕捉到文件的内容,如
String result = new BufferedReader(new InputStreamReader(inputStream))
.lines().collect(Collectors.joining("\n"));
所以我很肯定这个问题是存在的
Files.copy(inputStream, targetFile.toPath());
第一行的
file
是哪种类型?在调用Files.copy之前,您是否“捕获”了文件的内容?一旦读取(使用)InputStream,就不能再读取它。这可以解释为什么文件是空的…@Matt它是MultiPartFile我已经将代码复制粘贴到我的IDE中,它工作正常,已经用文件
替换了MultiPartFile
。是否可能存在隐藏/隐藏的异常?