Java中获取绝对路径出现% 20(路径被转码)的问题

Java中获取绝对路径出现% 20(路径被转码)的问题_第1张图片
在通过Class.class.getClassLoader().getResource()方法获取文件的绝对路径是抛出这个异常:
E:\MyEclipse%2010\Workspaces\day09_user\WebRoot\WEB-INF\classes\users.xml (系统找不到指定的路径。)

导致绝对路径出现异常的原因:

出现错误时,工作空间为Myecplise 10(中间有个空格)
Myecplise的工作空间名称包含了特殊字符(空格也算),导致路径转码后,出现了异常。空格被转译后为   %20

解决方案:
1. 电脑注销后,修改Myecplise的工作空间名,去掉特殊字符。
2. 通过URLDecoder.decode(path, “UTF-8”);方法 重新将获取的路径,变为正常的路径。

错误路径:
E:\MyEclipse%2010\Workspaces\day09_user\WebRoot\WEB-INF\classes\users.xml
正确路径:
E:\MyEclipse 10\Workspaces\day09_user\WebRoot\WEB-INF\classes\users.xml

你可能感兴趣的:(Java)