一开始以为ApacheFileUpload解决中文乱码直接是
ServletFileUpload fileUpload = new ServletFileUpload(diskFileItemFactory);
fileUpload.setHeaderEncoding("UTF-8");
后来才知道,貌似这个只对上传的文件资源的中文名乱码有效,但是对于表单中文乱码无法解决,后来百度了下,得知FileItem接口中有另外一个重载的方法:getString(String charset)。看了它的实现类有实现过
public String getString(String charset) throws UnsupportedEncodingException {
return new String(this.get(), charset);
}
所以,使用item.getString("UTF-8);这样能解决表单中文乱码