我们在做JavaWeb项目时,都会遇到路径问题,路径有相对路径和绝对路径(这个在这里不细说,别的大牛有总结),我这里就给在做maven工程JavaWeb项目时遇到的路径问题以及解决方法。
1.先上工程文件目录:
我们需要读取的文件在webapp下面(2),java类了在包controller下(1)。此次我们只用相对路径。
按照我们的路径我们应该是../../picture.png
看上图,路径就是这样,从理论上来说,没有错误,但是每当运行时就是错误的。看下图,这就很难受。
解决方案:
String falsePath = 类名.class.getClassLoader().getResource("../../picture.png").getPath();(自己把类名改了)
从变量中也可以看到这路径还是错误的,因为我们的路径中有的文件夹名字中有空格,例如:D:\Program%20Files\Apache%20Software%20Foundation\,这个%20代表的就是空格,所以还得就路径名改回来。
看右边,就能得到对的路径:String realPath = falsePath.replaceAll("%20", " ");