【JAVA】關於java中 類.class.getResource("/").getPath()獲取路徑有空格的問題


寫了一個web工程,在本地測試正確,但是部署到服務器上就出現錯誤。原因是讀取不到配置文件。

后來從打印出來的文件路徑中發現是用Java的class.getResource("/").getPath()獲取路徑的時候,路徑中的空格轉換成了%20。

在網上查詢相關信息,果然將空格轉成%20是一個古老的bug,我特意借此記錄一下,希望能幫到遇到同樣問題的朋友。

Bug ID: 4466485 getClass( ).getResource( ).getFile( ) returns file name with %20

此 bug 於 2001年6月被提出來,2002年11月最終關閉。
沒有修復的原因是這樣做會導致兼容性問題。

這里給出一個解決方案:

configPath = java.net.URLDecoder.decode(configPath,"utf-8");   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM