java下載url路徑包含中文需要轉義的操作
大家看這個url:
http://127.0.0.1:9997/file/江蘇省地震應急預案(二級).docx
應為url路徑中有中文沒有轉義,輸入流報錯
The valid characters are defined in RFC 7230 and RFC 398
下面我們對中文路徑進行截取轉義
int lastIndexOf = downloadUrl.lastIndexOf('/'); String fileName = downloadUrl.substring(lastIndexOf + 1); // 轉義關鍵代碼 String newFileName = URLEncoder.encode(fileName, "utf-8"); String subUrl = downloadUrl.substring(0,lastIndexOf + 1); String newUrl = subUrl + newFileName; URL url = new URL(newUrl); HttpURLConnection conn = (HttpURLConnection) url.openConnection();
補充知識:Java中URL傳遞中文字符成亂碼,及參數(shù)轉義符轉換
頁面使用此函數(shù)
function URLencode(sStr) { return escape(sStr). replace(/\+/g, '%2B'). replace(/\"/g,'%22'). replace(/\'/g, '%27'). replace(/\//g,'%2F'); }
處理一下url 要傳的參數(shù),這樣就可以傳到后臺想要的特殊字符了
以上這篇java下載url路徑包含中文需要轉義的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Spring Boot中集成各種日志框架Logback、Log4j2和Java Util
這篇文章主要介紹了Spring Boot中集成各種日志框架Logback、Log4j2和Java Util Logging,通過實例代碼介紹了集成Logback、Log4j2和Java Util Logging的基本步驟,你可以根據(jù)自己的需求進行配置和擴展,以滿足更復雜的日志需求,需要的朋友可以參考下2023-11-11SpringBoot過濾器實現(xiàn)項目內接口過濾詳解
這篇文章主要為大家詳細介紹了SpringBoot如何利用過濾器實現(xiàn)項目內接口過濾,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下2023-04-04Java8 String內存優(yōu)化之字符串常量池詳解
這篇文章主要介紹了Java8 String內存優(yōu)化之字符串常量池,具有很好的參考價值,希望對大家有所幫助,2023-07-07