Web运行控制台输出乱码解决总结
生活随笔
收集整理的這篇文章主要介紹了
Web运行控制台输出乱码解决总结
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><form action="/AServlet" method="post">用戶名:<input type="text" name="username" value="李四"/><br/><input type="submit" value="提交"></form><hr/><a href="/AServlet?username=張三">GET</a>
</body>
</html> 1 @WebServlet(name = "AServlet",urlPatterns = "/AServlet")
2 public class AServlet extends HttpServlet {
3 public void doPost(HttpServletRequest request, HttpServletResponse response)
4 throws ServletException, IOException {
5 request.setCharacterEncoding("utf-8");
6 String username = request.getParameter("username");
7 response.setContentType("text/html;charset=utf-8");
8 PrintWriter out = response.getWriter();
9 out.print(username);
10 System.out.println(username);
11 }
12
13 protected void doGet(HttpServletRequest request, HttpServletResponse response)
14 throws ServletException, IOException {
15 String name = request.getParameter("username");
16 response.setContentType("text/html;charset=utf-8");
17 PrintWriter out = response.getWriter();
18 out.print(name);
19 System.out.println(name);
20 }
21 } 1、運行環(huán)境: 操作系統(tǒng)系統(tǒng):Mac OS X10.12.6,語言:英文 開發(fā)工具:IntelliJ IDEA 2017.2.2,默認編碼:UTF-8 Tomcat:9.0.0.M26 2、問題:運行Web項目時,控制臺輸出亂碼。 3、解決方法: 設(shè)置Servlet的VM options(虛擬機選項)為:-Dfile.encoding=UTF-8
使用:chrome Version 60.0.3112.113,結(jié)果:控制臺輸出正常。
使用:QQBrowser Version 4.2.4761.400 (64-bit),結(jié)果:控制臺輸出正常。
使用:Safari?Version 10.1.2 (12603.3.8),結(jié)果:控制臺輸出正常。
使用:Firefox 55.0.3 (64 位),結(jié)果:控制臺輸出正常。
更換操作系統(tǒng)為中文,結(jié)果一致,排除系統(tǒng)語言方面原因。
注意:如果使用doPost()方法獲取表單,則需在獲取參數(shù)前設(shè)置:?request.setCharacterEncoding("utf-8");?否則會控制臺會出現(xiàn)亂碼。
參考:http://blog.csdn.net/rznice/article/details/41006913
轉(zhuǎn)載于:https://www.cnblogs.com/gdwkong/p/7457181.html
總結(jié)
以上是生活随笔為你收集整理的Web运行控制台输出乱码解决总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FreeMarker手册pdf
- 下一篇: [BZOJ] 1609: [Usaco2