我正在编写一个Spring Boot Web应用程序。
在我的应用程序中,我需要能够下载打包到可执行应用程序.jar中的zip文件。
我正在使用ClassPathResource加载该文件的流:
Resource applier=new ClassPathResource("applier/com.itnsa.patch.applier-1.0.25-SNAPSHOT-package.zip");
if (applier.exists()) {//do stuff}
压缩文件位于/ src / main / resources / applier。
在我的应用程序的其他一些类中,我已经使用此方法从/ src / main / resources / exception检索一些.txt文件,并且一切正常。当我尝试访问zip时,exist方法返回false。
访问zip存档时我在做什么错?我该如何实现?
最佳答案
Resource applier=new ClassPathResource("applier/com.itnsa.patch.applier-1.0.25-SNAPSHOT-package.zip");
if (applier.exists()) {//do stuff}
它应该工作,我尝试使用相同的文件名和相同的文件夹结构,它返回true,请确保jar文件位于类路径中。
如果要使用任何IDE进行操作,请确保jar文件位于类路径中。
您还可以使用下面提供的另一种方法,但实际情况并非如此
InputStream in = getClass().getResourceAsStream("/fileName.zip");
BufferedReader reader = new BufferedReader(new InputStreamReader(in));