日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

解决Java工程URL路径中含有中文的情况

發(fā)布時(shí)間:2025/6/17 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 解决Java工程URL路径中含有中文的情况 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

問(wèn)題:

當(dāng)Java工程路徑中含有中文時(shí),得不到正確的路徑
***

解決:

這其實(shí)是編碼轉(zhuǎn)換的問(wèn)題。當(dāng)我們使用ClassLoader的getResource方法獲取路徑時(shí),獲取到的路徑被URLEncoder.encode(path,"utf-8")編碼了,當(dāng)路徑中存在中文和空格時(shí),他會(huì)對(duì)這些字符進(jìn)行轉(zhuǎn)換,這樣,得到的往往不是我們想要的真實(shí)路徑,所以我們可以調(diào)用URLDecoder.decode()方法進(jìn)行解碼,以便得到原始的中文及空格路徑。
Java代碼 :
String packagePath = url.getPath().replaceAll("%20","");//解決路徑中含有空格的情況
packagePath = java.net.URLDecoder.decode(packagePath,"utf-8"); //解決路徑包含中文的情況
***

結(jié)果:

/D:/Java%e7%a8%8b%e5%ba%8f%ef%bc%88idea)/smartframework/core/target/classes/
解碼之后:/D:/Java程序(idea)/smartframework/core/target/classes/
***

關(guān)于解碼和編碼

URLEncoder.encode(String s, String enc)
使用指定的編碼機(jī)制將字符串轉(zhuǎn)換為 application/x-www-form-urlencoded 格式

URLDecoder.decode(String s, String enc)
使用指定的編碼機(jī)制對(duì) application/x-www-form-urlencoded 字符串解碼。

發(fā)送的時(shí)候使用URLEncoder.encode編碼,接收的時(shí)候使用URLDecoder.decode解碼,都按指定的編碼格式進(jìn)行編碼、解碼,可以保證不會(huì)出現(xiàn)亂碼

轉(zhuǎn)載于:https://www.cnblogs.com/lanqi/p/7895624.html

總結(jié)

以上是生活随笔為你收集整理的解决Java工程URL路径中含有中文的情况的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。