setContentType與setCharacterEncoding的區別


setCharacterEncoding只是設置字符的編碼方式 
setContentType除了可以設置字符的編碼方式還能設置文檔內容的類型

1.setCharacterEncoding

response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE html> \n"+"這里采用的是setCharacterEncoding");//這里設置了文檔類型是html

輸出: 
這里寫圖片描述 
如果去掉"<!DOCTYPE html> \n"這一句的話

response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("這里采用的是setCharacterEncoding");//這里沒有設置文檔內容的類型

輸出字體會變的沒有任何格式

這里寫圖片描述

瀏覽器的任何字體設置都沒有用(前面帶了"<!DOCTYPE html> \n"字體不一樣是因為我設置了瀏覽器的個性化字體)

2.setContentType

response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("這里采用的是setContentType");

這里寫圖片描述

完全和帶了"<!DOCTYPE html> \n"的setCharacterEncoding一樣。

3.另外

setCharacterEncoding和setContentType只能在response.getWriter();之前才有用,如果是在這之后是沒有任何作用的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM