在做一个读取服务器端文件的文件名和文件长度的时候,遇到了读取路径出错的问题。最开始直接将放文件的文件夹放到工程目录下,然后直接path = "public_files/"(public_files为存放文件的文件夹),结果读出来的结果为空。之后试着将文件夹放到WebContent目录下和WEB-INF/classes目录先都不行。之后,考虑到这整个服务器端是要上传到Tomcat服务器的,于是使用了服务器中的路径

path = "/var/lib/tomcat6/webapps/public_files/";

结果是可行的。

需要注意的是,使用该路径的时候,文件夹要放在WEB-INF/classes目录下。但是,使用这个的话,换另一个服务器就不行了。于是在网上查找资料后,改用

path = this.getClass().getResource("/public_files").getFile();

于是问题就解决了。

this.getClass().getResource()

是得到文件的一个绝对路径的方法。当然,还可以用

Listener的getContent()

方法。