request.setCharacterEncoding()与字符串的方法,如:
String title=request.getParameter("title");
title = new String(title.getBytes("ISO8859-1"),"GBK");两者之间有什么联系与区别?
request.setCharacterEncoding()与字符串的方法,如:
String title=request.getParameter("title");
title = new String(title.getBytes("ISO8859-1"),"GBK");两者之间有什么联系与区别?
区别:
①,两者的处理过程不一样。String title=request.getParameter("title"); 是直接从request获得字符串,字符集是系统默认的字符集。
而title = new String(title.getBytes("ISO8859-1"),"GBK");
第一步,是title.getBytes("ISO8859-1"),使用给定的 "ISO8859-1"字符集 将此字符串title 编码到 byte 序列,并将结果存储到新的 byte 数组。然后再通过使用指定的 "GBK"字符集解码指定的 byte 数组,构造一个新的 String。
②,title = new String(title.getBytes("ISO8859-1"),"GBK");可以在一定程度上防止出现乱码问题。而String title=request.getParameter("title");却不能。
不知您是否满意?!