首页 > 代码库 > swfupload组件后台获取中文文件名乱码的问题解决

swfupload组件后台获取中文文件名乱码的问题解决

   问题描述:用swfupload上传文件,含有中文名称的文件上传会报错,我用的是获取FileItem对象,用FileItem对象的getName()方法获取文件名称会乱码,试着用request.setCharacterEncoding("UTF-8")及fileName= new String(fileName.getBytes("iso-8859-1";),"UTF-8"); 都不可以,用FileItem对象.getString("UTF-8")获取的中文文件名称正确,但是写入的时候又不行,有人说在前台提交前编码,后台解码,但是就算获取正确的中文名称吗,写入的时候又会出错。

   解决方法:网上说了很多,都不管用,无论是后天接收转码、或者提交前编码接收时再转码、再或者是修改服务器的编码或者页面编码,真正的解决方法是无意间发现的:

        在后台接收数据一开始就加入一句:request.setHeaderEncoding("utf-8");即可。