为了账号安全,请及时绑定邮箱和手机立即绑定

为什么此处字符编码的操作要多于之前呢?

请问老师,在前面的编码中,出现汉字不是只要用setCharacterEncoding(“”utf-8“”)就好吗?这里为什么还要使用URLEncoding的方法来转码呢?

正在回答

4 回答

给你举个例子,Cookie这个相当于一个银行,它只收小块金子(它认识的编码格式),你是个有钱人,要在Cookie中保存一些大金子(中文字符),但是Cookie不收,因为它不认识,这时候旁边有个URLEncoder跟你说,用它的方法encode(string,utf-8)可以按照utf-8转换,就可以存了,等取出的时候,按照URLDecoder的decode(string,utf-8)就可以完全还原你的大金子(中文).

0 回复 有任何疑惑可以回复我~
#1

0110号建筑师 提问者

非常感谢!
2017-05-13 回复 有任何疑惑可以回复我~

额,你百度一下吧...

0 回复 有任何疑惑可以回复我~

因为这里是要保存到cookie中啊...

0 回复 有任何疑惑可以回复我~
#1

0110号建筑师 提问者

保存在cookie中与之前的原理不同在哪里呢?
2017-05-13 回复 有任何疑惑可以回复我~

你说的是URLEncoder.encode(String  str, "utf-8")?

这个地方就相当于吧中文字符存储时,打上一个标记,为utf-8,存为xxx码。然后取出的时候,按照标记utf-8来解码,把xxx码解成utf-8编码格式。不知道你能不能理解。

0 回复 有任何疑惑可以回复我~
#1

0110号建筑师 提问者

为什么之前的代码不需要这个方法,而这里却需要呢?
2017-05-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么此处字符编码的操作要多于之前呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信