課程
/后端開發(fā)
/Java
/JAVA遇見HTML——JSP篇
已經(jīng)把request的setcharactercoding改成了 utf-8,為什么還要再調(diào)用net包里面的java.net.URLEncoder.encode()方法呢???
2016-04-23
源自:JAVA遇見HTML——JSP篇 6-4
正在回答
package?com.imooc.demo; import?java.io.UnsupportedEncodingException; import?java.net.URLDecoder; import?java.net.URLEncoder; public?class?UrlEncodeDemo?{ public?static?void?main(String[]?args)?throws?UnsupportedEncodingException?{ //URLEncoder編碼中文字符串 StringBuilder?str_no_encode?=?new?StringBuilder("我是一個(gè)好人"); StringBuilder?str_encode?=?new?StringBuilder(URLEncoder.encode(str_no_encode.toString(),?"utf-8")); System.out.println("編碼前字符串:"+str_no_encode); System.out.println("編碼后字符串:"+str_encode); ????????//URLDecoder解碼中文字符串 StringBuilder?str_decode?=?new?StringBuilder(URLDecoder.decode(str_encode.toString(),?"utf-8")); System.out.println("解碼后字符串:"+str_decode.toString()); } }
這是運(yùn)行結(jié)果:
編碼前字符串:我是一個(gè)好人
編碼后字符串:%E6%88%91%E6%98%AF%E4%B8%80%E4%B8%AA%E5%A5%BD%E4%BA%BA
解碼后字符串:我是一個(gè)好人
這個(gè)是我寫的一個(gè)中文編碼,解碼過程的一個(gè)案例。你看了案例就會(huì)明白,在一些地方,無法使用中文直接存儲(chǔ),所以就必須按照一定格式,將中文編碼,編碼之后存儲(chǔ),下次取得時(shí)候,再按照一定格式解碼。實(shí)際上cookie就是一個(gè)無法存儲(chǔ)中文的地方,所以必須將存儲(chǔ)的中文進(jìn)行編碼,至于已經(jīng)把request的setcharactercoding改成了 utf-8這個(gè)只能設(shè)置你在頁面請(qǐng)求的時(shí)候的編碼,設(shè)置之后你可以在請(qǐng)求接收和傳送中使用中文。這下你懂了吧
咚冬嗆 提問者
qq_云在風(fēng)中_0 回復(fù) 咚冬嗆 提問者
還是不太懂,能說得詳細(xì)一點(diǎn)嗎?謝謝!
前者是設(shè)置 ?后者是轉(zhuǎn)碼
舉報(bào)
Java Web入門級(jí)教程JSP,帶你輕松的學(xué)習(xí)JSP基礎(chǔ)知識(shí)
2 回答解決不了中文亂碼問題
1 回答中文亂碼解決
1 回答解決url傳中文參數(shù)亂碼問題
1 回答中文亂碼解決方式?
1 回答中文亂碼怎么解決
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-05-28
這是運(yùn)行結(jié)果:
編碼前字符串:我是一個(gè)好人
編碼后字符串:%E6%88%91%E6%98%AF%E4%B8%80%E4%B8%AA%E5%A5%BD%E4%BA%BA
解碼后字符串:我是一個(gè)好人
這個(gè)是我寫的一個(gè)中文編碼,解碼過程的一個(gè)案例。你看了案例就會(huì)明白,在一些地方,無法使用中文直接存儲(chǔ),所以就必須按照一定格式,將中文編碼,編碼之后存儲(chǔ),下次取得時(shí)候,再按照一定格式解碼。實(shí)際上cookie就是一個(gè)無法存儲(chǔ)中文的地方,所以必須將存儲(chǔ)的中文進(jìn)行編碼,至于已經(jīng)把request的setcharactercoding改成了 utf-8這個(gè)只能設(shè)置你在頁面請(qǐng)求的時(shí)候的編碼,設(shè)置之后你可以在請(qǐng)求接收和傳送中使用中文。這下你懂了吧
2016-04-23
還是不太懂,能說得詳細(xì)一點(diǎn)嗎?謝謝!
2016-04-23
前者是設(shè)置 ?后者是轉(zhuǎn)碼