当前位置:网站首页>The Chinese output of servlet server and client is garbled
The Chinese output of servlet server and client is garbled
2022-07-04 23:14:00 【Zuo Mingshui】
1, Browser code - spot - Right click - see - code - Confirmation is utf-8.
2,web Server code ISO-8859-1
Situation 1 、 Forms
Form content :
html
meta http-equiv=”content-type” content=”text/html;charset=utf-8”/
body
h1> Our form
form action=”/,,” method=”post”
user name :input type=”text” name=”username”/
password  :input type=”password” name=”username”
input type=”submit” value=” Submit ”
The way 1,get Submit in the request line .
Method 1,
String s=new String(request.getParameter(“username”).getBytes(“iso-8859-1”),”utf-8”);
// Clearly inform with ios-859-1 receive , To utf8 code
Method 2,
Write tool class
1〉 stay src Zhongjian has a toolkit (com.zys.utils)
2〉 Build a class in the package (MyTools)
3〉 The code is as follows :
Public class MyTools{
Public static String getNewString(String str){
String newString=”“;
try{
newString=new String(str.getBytes(“ios-8859-1”),”utf-8”);
}catch(Exception e){
e.printStackTrace();
}
return newString;
}
}
4〉 Receive and convert
String s=request.getParameter(“username”);
// Import toolkit
MyTools.getNewString(s);
The way 2,post The submission is encapsulated in the request body .
Only in web Server receiver page :
request.setCharacterEncoding(“UTF-8”);
explain : It is best to post Submit , Large amount of data - Security - convenient .
Situation two 、 Hyperlinks
Test connection
The essence is get Submit .
Situation three 、sendRedirect();
Form submission - The way 1get- Method 2 in 4〉 Receive form submissions username And convert .
String s=request.getParameter(“username”);
// Import toolkit
MyTools.getNewString(s);
// Put the received u Data is transferred to the next page .
response.sendRedirect(“/ Next page address ?uname=”+s);
//s It's Chinese , Therefore, it is also used get Submit Chinese .
// Receive on the next page uname And switch .
// The server is already in Chinese , Also let the client ( browser ) Print out Chinese .
response.setContentType(“text/html;charset=utf-8”);
PrintWriter out=response.getWriter();
String s=request.getParameter(“uname”);
// The server type is Chinese
System.out.prinln(“uname=”+MyTools.getNewString(s));
// The client outputs Chinese
out.prinln(“uname=”+MyTools.getNewString(s));
Situation four 、IE6 Up to , For case 2 and case 3 , There are odd numbers in Chinese .
Method :
Situation two
String info=java.net.URLEncoder.encode(“ Study hard .jpg”,”utf-8”);
Test connection
Situation three
response.sendRedirect(“/ Next page address ?uname=”+info);
边栏推荐
- Object detection based on OpenCV haarcascades
- 【js】-【动态规划】-笔记
- The solution to the lack of pcntl extension under MAMP, fatal error: call to undefined function pcntl_ signal()
- SHP data making 3dfiles white film
- 常用技术指标之一文读懂BOLL布林线指标
- Redis入门完整教程:事务与Lua
- Redis入門完整教程:Pipeline
- Google Earth engine (GEE) - tasks upgrade enables run all to download all images in task types with one click
- ETCD数据库源码分析——处理Entry记录简要流程
- SPH中的粒子初始排列问题(两张图解决)
猜你喜欢

Redis getting started complete tutorial: Geo

Duplicate ADMAS part name

Redis démarrer le tutoriel complet: Pipeline

【图论】拓扑排序

Network namespace

Redis: redis message publishing and subscription (understand)

The initial arrangement of particles in SPH (solved by two pictures)

Google Earth engine (GEE) - tasks upgrade enables run all to download all images in task types with one click

One of the commonly used technical indicators, reading boll Bollinger line indicators

MariaDB的Galera集群-双主双活安装设置
随机推荐
Explanation of bitwise operators
ETCD数据库源码分析——处理Entry记录简要流程
The solution to the lack of pcntl extension under MAMP, fatal error: call to undefined function pcntl_ signal()
Redis introduction complete tutorial: List explanation
Redis入门完整教程:慢查询分析
【图论】拓扑排序
HMS core unified scanning service
ffmpeg快速剪辑
ScriptableObject
【ODX Studio編輯PDX】-0.2-如何對比Compare兩個PDX/ODX文件
【剑指Offer】6-10题
字体设计符号组合多功能微信小程序源码
Redis入门完整教程:HyperLogLog
[ODX studio edit PDX] - 0.2-how to compare two pdx/odx files of compare
壁仞科技研究院前沿技术文章精选
图片懒加载的原理
微信公众号解决从自定义菜单进入的缓存问题
How can enterprises cross the digital divide? In cloud native 2.0
Redis: redis configuration file related configuration and redis persistence
VIM editor knowledge summary