setContentType与setCharacterEncoding的区别

    xiaoxiao2026-02-08  0

    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();之前才有用,如果是在这之后是没有任何作用的。

    最新回复(0)