您当前的位置: 首页 > 

liaowenxiong

暂无认证

  • 2浏览

    0关注

    1171博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

如何处理表单中的中文(中文编码/解码问题)

liaowenxiong 发布时间:2021-03-20 19:24:47 ,浏览量:2

浏览器会如何对表单中的数据进行编码?

当表单采用 post 方式提交时,浏览器会按照打开该表单所在的页面的编码来对表单中的数据进行编码。

在 html 文件当中设置字符编码集(即字符编码格式)
 

作用 1:

模拟 http 消息头(content-type),让浏览器以 utf-8 的编码格式来打开该页面,也就是浏览器以 utf-8 来解码该页面(要确保 html 文件本身确定是使用 utf-8 保存的)。

作用 2:

确保浏览器按指定的字符编码集来对表单中的数据进行编码。

中文乱码解决方案 步骤 1:html 文件添加消息头 content-type

在 html 文件中,添加 另外,表单的提交方式必须是 post。

步骤 2:服务端设置解码的编码格式

在服务器端,使用 servlet 读取表单中的请求参数时,写入代码:request.setCharacterEncoding("utf-8"),这行代码的作用就是设置解码时的编码格式。

步骤 3:设置服务端返回数据的消息头 content-type

如果 servlet 输出中文,要添加代码:response.setContentType("tex t/html;charset=utf-8"),这行代码的作用:

作用 1: 指定 out.println 输出时所使用的编码格式。

作用 2: 生成一个消息头 content-type:text/html;charset=utf-8 告诉浏览器,返回的数据类型是 html,编码是 utf-8。这样,浏览器一定会以指定的编码来显示该页面(即以指定的编码格式来解码页面数据,并且该页面有提交表单数据时,也会以指定的编码格式进行编码)

关注
打赏
1661566967
查看更多评论
立即登录/注册

微信扫码登录

0.0496s