java web上传文件,普通表单和文件名乱码问题

项目中用到文件上传。form提交,如果enctype="multipart/form-data",会发现文件名或者普通表单字段乱码

大家一般解决文件名称乱码比较容易,如以下设置


FileItemFactory factory = new DiskFileItemFactory();

ServletFileUpload fileload = new ServletFileUpload(factory);

fileload.setHeaderEncoding("utf-8");//解决文件名称乱码


然而,当解析普通文本的时候,String name = item.getFieldName(); String value = item.getString();,会发现中文乱码。

网上搜索半天,有的人说用jspSmartLoad,也有人说用new String(fileItem.getName().getBytes(),"utf-8"),等等方法。

经过自己研究,发现最好的方法是String value = item.getString('utf-8');//具体的编码自己更具实际情况填写

你可能感兴趣的:(java web上传文件,普通表单和文件名乱码问题)