在Java中有时获取文件路径,获取的路径中存在中文或者是空格的时候,路径出现乱码。这个问题困扰了我好久,用过各种的转码都无济于事。在后来终于解决了,在这里和大家分享一下,其实也就是加一行代码的问题。
我在项目的是使用
String path = this.getClass().getClassLoader().getResource("/").getPath().substring(1);
这样来获得当前类的文件路径的。但是这样得到的是乱码。后来经过跟踪 在this.getClass().getClassLoader()返回的url这里的路径还是没错的。只是后面有问题。所以转码的话应该是要转url.所以在后面添加了这样一行代码。
path = java.net.URLDecoder.decode(path, "utf-8");
这样做获得的路径就没问题了。
呵呵 此问题解决!
String path = this.getClass().getClassLoader().getResource("/").getPath().substring(1); path = java.net.URLDecoder.decode(path, "utf-8");
以上这篇完美解决Java获取文件路径出现乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。