SmartUpload up = new SmartUpload(); 
up.initialize(pageContext) ; 
up.service(request,response) ; 
up.upload() ; 
File f=up.getFiles().getFile(0); 
String fname = f.getFileName(); //文件名 
fname= fname.substring(0,fname.indexOf(".")); 
System.out.println("fname ="+fname); 如果文件名是“月亮”,就显示“链堜寒”, 
我用URLEncode和URLDecode也不管用, 
怎么办呀?*_*

解决方案 »

  1.   

    在首句
    request.setCharacterEncoding("gb2312");
      

  2.   

    上面说的方法,我试了,好象没效果。另,程序所有的页面均采用UTF-8编码
      

  3.   

    up.upload(gbk) ;把源代码里这个方法改下,我也遇到相似问题
      

  4.   

    zhao_tk() (能说得详细点吗?谢了
      

  5.   

    注意保存jsp时,转换器也要设置UTF-8(另UTF-8  注意大小写)
      

  6.   

    楼主弄错了,你写的题目是上传, 但是代码是下载,你叫别人怎么帮你。到 aspcool.net/com 中找找, 有一篇文章指出来了。修改代码的几个地方
      

  7.   

    ??????lshvs2005()呵呵,你真让我郁闷
      

  8.   

    偶在做的时候也遇到累似问题,偶是这样的解决的。
    在客户端提交之前把有中文的所有表单用js编码之后赋值给一个隐藏域。然后再服务器端接收隐藏域的值解码。就ok了
      

  9.   

    改源代码,把SmartUpload 类的upload方法的加个参数,传入编码类型啊。
    然后在方法里用request.setCharacterEncoding("gbk");
      

  10.   

    ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲去下面地址下载 SmartUpload 上传组件(中文终极解决版)即可 
    http://download.csdn.net/source/608182▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲