The solution is as follows:
You can use java.net. URLEncoder. encode () to encode the Chinese characters to be passed.
A. Transcode the parameter before passing the parameter: java.net. URLEncoder. encode (param );
Use the statement java.net. URLDecoder. decode (param) to return the value to Chinese.
For example, set cookie
The code is as follows: |
Copy code |
<% String str = "this is a Chinese cookie value "; Cookie c = new Cookie ("str", java.net. URLEncoder. encode (str )); C. setMaxAge (24*3600 ); // Add a cookie object to the client Response. addCookie (c ); %>
|
Accept cookie:
The code is as follows: |
Copy code |
<% Request. setCharacterEncoding ("UTF-8 "); Cookie [] cookies = request. getCookies (); For (Cookie c: cookies) { // If the cookie value is 'str', you need to find it. If (c. getName (). equals ("str ")) { Out. print (java.net. URLDecoder. decode (c. getValue ())); } } %> |
The url values below are garbled in Chinese.
Jump page:
The code is as follows: |
Copy code |
<A href = info. jsp? Info = "<% = java.net. URLEncoder. encode (" Chinese character "," GBK ") %>"> Jump </a> |
Receiving page
The code is as follows: |
Copy code |
<% String info_str = new String (request. getParameter ("info"), "ISO8859-1 "); Out. print (info_str); // output receiving value %> |