怎么解决中文文件名上传后乱码的问题?

来源:2-5 保存上传文件内容

风满西楼

2015-07-20 00:10

哪里设置编码集?

filename = URLEncoder.encode(filename, "utf-8");

这样么,设置GBK和utf-8都是乱码!

写回答 关注

3回答

  • 堕天使008
    2015-07-20 10:10:38
    已采纳

    这个是看你页面的设置了,页面和代码部分用同种编码就行。

    你写的这个方法是页面上的? 这个不是把普通字符装换成URL编码的方式吗?

    上传应该不用这个吧? 上传是通过post请求提交的吧,post请求 可以通过

    request.setCharacterEncoding("UTF-8");

     这个方法指定页面传过来的字符串的编码。如果这样还是乱码还有终极解决办法。

    filename= new String(filename.getBytes("ISO-8859-1"),"UTF-8");


    风满西楼

    已解决问题,String的构造器转换编码还真是万能的吖!谢谢!

    2015-07-20 22:19:58

    共 1 条回复 >

  • qq_田少_04403707
    2020-04-17 11:40:58

    filename= new String(filename.getBytes("ISO-8859-1"),"UTF-8");这个很管用 牛逼

  • qq_雨中娃娃_03539956
    2016-07-09 09:08:23

    为什么 我这样做 还是 不行  各种方法 都试了  还是 乱码

Java中的文件上传下载

由简入深,轻松实现文件上传下载功能及相关框架的使用

77393 学习 · 337 问题

查看课程

相似问题