路径中的空格在作梗

     Tomcat里的一段程序要读取一个配置文件,在自己电脑里跑一点问题也没有,文件内容乖乖的给我读出来了;可应用部署到别人的机子都会报错:文件获取失败!

 

     代码读文件是这么写的:

String fileAddress = this.getClass().getClassLoader()
                        .getResources("categoryList.xml").nextElement()
                        .getPath();
File listFile = new File(fileAddress);
logger.debug("Get the file at: " + listFile.toString());
categoryParser = new CategoryParser();
logger.debug("If file exists: " + listFile.exists());

 

      第一个debug返回都正确的,但别人机子上第二个debug就显示false了……

 

      折腾半天才发现,别人的tomcat默认的文件夹都有一个空格,于是获取到的路径会将空格转换成ASCII码‘%20’,于是就访问不到文件了!哎,这么会遇到这样的问题的……

 

      于是乖乖的加上一句:

URLDecoder.encode("fileAddress","GBK");
 

你可能感兴趣的:(tomcat,xml)