昨天在项目中遇到了一个问题,
问题如下:如图
在项目中想要读取这两个文件。
相应的代码为: BufferedReader reader2=new BufferedReader(new FileReader(PrivaligeFilter.class.getResource("/user.txt").getFile()));
结果出现如下错误:
java.io.FileNotFoundException:C:\Program%20Files\Apache%20Software%20Foundation\Tomcat%207.0\webapps\MyStore\WEB-INF\classes\user.txt (系统找不到指定的路径。).
看错误的原因“%20”的位置应该是空格,出错的原因应该就是路径中存在空格后的编码问题;
对代码做如下修改:
String path = this.getClass().getResource("/admin.txt").getFile();
try {
path = java.net.URLDecoder.decode(path, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
然后再运行,搞定!