讀取文件路徑時可能存在以下情況:
1、空格,如果出現空格會轉變成“%20”
2、中文路徑,如果出現中文路徑會變成URI編碼“%e5%bc%80%e5%8f%91%e5%b7%a5%e7%a8%8b”
處理以上問題,可以有如下解決方法:
1、對於空格問題,可以使用replaceAll("%20"," ")
2、URLDecoder.decode("string","UTF-8");,但是這種方法當路徑上有+號時會變成空格,所以也會有問題。
3、完美解決方法:getResource("").toURI().getPath()。可以同時解決以上兩個問題。
參考: