『壹』 java中url後面加中文參數urlencoder.encode亂碼怎麼辦

你這個問題真心不好辦,建議你把頁面編碼改為GBK編碼把。像樓上說的這些方法看似行得通,原理就是把utf-8轉為gbk然後再轉回utf-8,但那樣是不能解決問題的,試圖通過String newStr = new String(str.getBytes("gbk","utf-8"));辦不到的,結果是中文字元為奇數會出現最後一個字亂碼。我以前也曾碰到這個情況,最後還是把頁面統一編碼解決。
-

『貳』 解析URL中的漢字參數 Java

import java.net.URLDecoder;
import java.net.URLEncoder;

String strTest = "?=abc?中%1&2<3,4>";
strTest = URLEncoder.encode(strTest, "UTF-8");
System.out.println(strTest);
strTest = URLDecoder.decode(strTest,"UTF-8");
System.out.println(strTest);

『叄』 Java URL訪問路徑中文問題

不要用中文路徑,即使你這次適配了,換個環境還是可能不行的,文件英文可以用file,圖片可以用pic

『肆』 Java 中如何在 url 字元串找出中文字進行轉碼

url 中包含 「:、/」 是用來幹嘛的? 路徑?
如果有變數的話,建議還是單獨來轉碼,不要放進url然後把url全部轉碼。

『伍』 java url中有中文 傳到後台有亂碼 怎麼改 亂碼是

你這個問題真心不好辦,建議你把頁面編碼改為GBK編碼把。像樓上說的這些方法看回似行得通,原理就是把utf-8轉為答gbk然後再轉回utf-8,但那樣是不能解決問題的,試圖通過String newStr = new String(str.getBytes("gbk","utf-8"));辦不到的,結果是中文字元為奇數會出現最後一個字亂碼。我以前也曾碰到這個情況,最後還是把頁面統一編碼解決。

『陸』 java如何訪問帶中文路徑的url

可以用二進制,先把中文全部轉換,然後傳值,在伺服器中相應的轉換為10進制

『柒』 地址欄中有漢字,java如何利用對url編碼求解

地址欄中出現漢字的情況有兩種,一種是漢字出現在URL的路徑部分,一種是漢字出現在URL的傳參的部分,第二種情況的時候必須採用編碼後傳參,接受時解碼的方式完成傳參。js中編碼有escape(),encodeURI(),encodeURIComponent()三個常用的方法,escape()常常用在提交頁面和處理頁面的編碼格式相同的情況下(比如它們都是GB2312),encodeURI()和encodeURIComponent()的用法基本相同,區別在於encodeURIComponent()也對"?"等特殊字元進行編碼。
一開始遇到中文參數的時候,使用encodeURI()進行了一遍編碼,傳過去後,發現解碼出現問題,於是想到可能是編碼方法使用錯誤,於是使用escape()方法,這時發現解碼時拋出isHexDigit異常。藉助網路搜索isHexDigit異常,
發現原來,是escape()方法造成了異常,同時了解了瀏覽器傳遞地址的一些原理,在瀏覽器地址欄里,瀏覽器認為%是個轉義字元,瀏覽器會把%與%之間的編碼,兩位兩位取出後進行解碼,然後再傳遞給處理頁面,
然後由處理頁面進行再次解碼。由此我想到一直使用encodeURI方法是正確的,只是需要使用兩次encodeURI方法,例如encodeURI(encodeURI("中文"));第一次是把中文編碼成%xy的格式,
第二次是對%xy中的%進行編碼,%編碼成%25。整個傳參過程大體應該是:提交頁面使用encodeURI(encodeURI("中文"))編碼,把最後的編碼結果%25xy傳遞給處理頁面的過程中,瀏覽器獲取URL地址
(注意openModelDialog方法,瀏覽器獲取不到參數編碼)後解碼成%xy,然後把%xy傳遞給處理頁面,處理頁面使用URLDecoder.decode(request.getParameter("參數名"),"UTF-8");完成解碼。
總結:1、漢字出現在URL路徑部分的時候不需要編碼解碼;

『捌』 java url中文後台怎麼接收

request接受解碼

『玖』 java url中文轉碼問題

你這是從Servlet中取來參然後在界自面顯示是吧,JSP這個你設置的沒:<%@page pageEncoding="utf-8" contentType="utf-8" %>
以及request,response的設置:
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");