22
只是想知道幕后是什么。 其实我们似乎可以设置编码,:编码和Servlet API:setContentType或setCharacterEncoding
response.setContentType("text/html; charset=UTF-8")
response.setCharacterEncoding("UTF-8")
的区别是什么?
只是想知道幕后是什么。 其实我们似乎可以设置编码,:编码和Servlet API:setContentType或setCharacterEncoding
response.setContentType("text/html; charset=UTF-8")
response.setCharacterEncoding("UTF-8")
的区别是什么?
的javadoc是关于差异很清楚:
void setCharacterEncoding(String charset)
设置响应的字符编码(MIME字符集)被发送到客户端,例如,到UTF-8。如果字符编码已由setContentType(java.lang.String)
或setLocale(java.util.Locale)
设置,则此方法覆盖它。 使用字符串text/html
调用setContentType(java.lang.String)
并用UTF-8字符串调用此方法与调用setContentType
的字符串为text/html; charset=UTF-8
等效。
void setContentType(String type)
设置响应的内容类型被发送到客户端,如果响应尚未提交。 给定的内容类型可以包括字符编码规范,例如,text/html;charset=UTF-8
。
@塞巴斯蒂安:这是两个明确的问题,你应该把它分成两个帖子。 – skaffman 2011-02-01 16:23:02