EXTJs + Struts2上传中文文件出现文件名乱码

本文介绍了解决Struts2文件上传时出现的乱码问题。通过前端对参数进行编码,后端解码的方式,成功解决了文件名及描述信息的乱码问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     最近在项目中使用ext和struts2实现文件上传的功能,在ext定义的form中定义了 fileUpload:TRUE,以实现文件上传的功能。但是出现的乱码的问题,在后台中拿到的文件名是乱码,从前端得到的其他参数,如文件说明等信息,传到后台struts2后也是乱码。在网上找了各种方法,比如设置struts配置文件 struts.i18n.encoding=utf-8,进行字符串编码转码,修改JSP的编码。其中将JSP中的编码有GBK改为UTF-8时会是的页面出现乱码,进行字符串转码也还是得到乱码,该struts的配置文件也出现乱码。网上还有说修改web.xml配置文件的字符编码过滤器,但是我已经定义了struts的过滤器,不知道再怎么定义编码过滤器,希望哪位大侠可以不吝赐教。


     后来解决的方法是,前端在向后台传参数前先对要传的参数进行编码,如

   materialDescript : encodeURIComponent(descript),

然后在后台拿到参数后再对其进行解码,如:

String descriptUtf = java.net.URLDecoder.decode(this.getMaterialDescript(), "UTF-8");

这样就能正确显示前端输入的参数。

 

 

   参考了这篇博文: http://blog.csdn.net/wangcaidpjxwq/archive/2011/02/14/6184121.aspx

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值