Ext.ux.uploaddialog3.0上传文件乱码问题

  Ext.ux.uploaddialog是扩展出来的一个批量上传文件组件。EXT官网上是有下载的。不过官网上下载的组件默认只支持EXT2.0。并不支持3.0版本。主要是2.0和3.0的一些元素的获取方式不一样。我自己从网上搜索了多种针对3.0的修改版本并自己进行了一些修改。改正了网上流传版本的一些图标显示问题等。目前我修改过的这个扩展组件已经上传到CSDN上。地址:http://download.csdn.net/source/2990333

  然后说到中文文件上传乱码问题,因为这个批量上传组件的上传机制其实和form设置了fileupload:true之后上传文件的机制一样的。都是传一个未编码的stream流到后台的。而我的项目中使用了ssh,在struts中设置了编码。所以传到后台时文件名称就是乱码。几经波折。最后在Ext.ux.uploaddialog中修改了post参数。使其在post时对文件名进行了编码。具体代码:

。然后大家也能看出来。我这样写了之后就决定了后台接收文件名的变量只能是'upLoadFileName'。算是一个弊端吧。然后在后台接收到文件名后进行了一次解码。

 

这里要注意一下,网络上多是在前台进行2次编码,后台进行一次解码。这是可能是由于他们没有使用struts吧?我也不是很清楚。而在后台对前台传过来的相应变量进行赋值时会进行一次解码。但是这次解码的结果是不对的。必须再使用java.net.URLDecoder.decode进行一次解码。对于我们现在的项目来说。在对后台相应变量赋值前已经由struts又进行了一次UTF-8编码。所以在前台是不需要进行2此编码的。

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页

打赏作者

wangcaidpjxwq

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值