代码:org.springframework.core.io.Resource resource = new ClassPathResource(”temp/门诊登记本.xls”); log.info("resource: {}",JSONObject.toJSONString(resource)); InputStream inputStream = resource.getInputStream(); // 指定临时目录或其他目录来保存文件 Path tempFile = Files.createTempFile("temp-", ".xls"); Files.copy(inputStream, tempFile, StandardCopyOption.REPLACE_EXISTING); // 获取文件的绝对路径 String absolutePath = tempFile.toAbsolutePath().toString(); log.info("absolutePath: {}",absolutePath);获取文件路径报错:Caused by: java.io.FileNotFoundException: class path resource [temp/门诊登记本.xls] cannot be resolved to URL because it does not exist
时间: 2024-04-16 19:24:10 浏览: 137
springboot报错:NoClassDefFoundError: org/springframework/transaction/ReactiveTransactionManager
5星 · 资源好评率100%
根据您提供的错误信息,看起来是找不到 `temp/门诊登记本.xls` 文件。可能的原因是文件路径不正确或文件不存在。
请确保以下几点:
1. 确认 `temp/门诊登记本.xls` 文件存在于 `resources` 文件夹下,并且路径是正确的。可以通过检查项目结构来确认文件位置是否正确。
2. 确保文件名大小写与实际文件名匹配。在某些操作系统上,文件名是区分大小写的。
3. 尝试使用相对于类路径的完整文件路径。例如,如果 `temp` 文件夹位于 `resources` 的根目录下,可以尝试使用 `"/temp/门诊登记本.xls"`。
另外,您可以尝试在日志中打印出类路径资源是否存在,以便进一步调试:
```java
org.springframework.core.io.Resource resource = new ClassPathResource("temp/门诊登记本.xls");
log.info("resource exists: {}", resource.exists());
```
如果输出为 `false`,则表示资源不存在或路径不正确。
请根据上述提示检查文件路径和存在性,以确保能够正确获取到文件。如果问题仍然存在,请提供更多的项目结构信息和相关代码,以便更好地帮助您解决问题。
阅读全文