代码改变世界

apache fileupload中文编码问题

2012-02-04 22:03  clarkhan  阅读(758)  评论(0编辑  收藏  举报

Java代码

  1. 1 request.setCheracterEncoding("utf-8");  
    2 DiskFileUpload.setHeaderEncoding("utf-8");
    3 FileItem.getString("utf-8");

上面这三个地方设置好之后就应该解决了。适用于fileupload较新的各个版本
用Apache Commons FileUpload来实现文件上传的时候,往往会遇到一些中文乱码的问题,有可能是获取的文件路径或者文件名称为乱码,也有可能获取的表单字段为乱码,以UTF-8编码为例,解决的办法如下:
    * 调用FileUpload.settingHeaderEncoding("UTF-8"),这项设置可以解决路径或者文件名为乱码的问题。
    * 在取字段值的时候,用FileItem.getString("UTF-8"),这项设置可以解决获取的表单字段为乱码的问题。