选择了commons fileupload这个上传组件

但是,不仅有文件名称的中文乱码,还有非文件的表单字段的乱码

So:

//1_创建DiskFiletemFactory对象 设置允许上传文件大小
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(1024*1024*200);//允许上传文件最大为200M
//2_创建ServletFileUpload upload
ServletFileUpload upload = new ServletFileUpload(factory);
//处理上传文件的路径乱码
upload.setHeaderEncoding("UTF-8");//3_因为form表单中设置了enctype="multipart/form-data"属性
//所以通过upload解析request,得到集合<FileItem>
//FileItem代表什么?工具将请求体中每对分割线中间的内容封装为一个FileItem对象
List<FileItem> list = upload.parseRequest(request);
//4_遍历集合
for(FileItem item : list) {//然后对获取的FileItem执行如下转码方式//new String(item.getString("UTF-8"));//配合upload.setHeaderEncoding("UTF-8");使用String name = item.getFieldName();//表单名称String value = new String(item.getString("UTF-8"));//表单内容 + 处理乱码
}

一、解决上传文件的路径乱码问题:

ServletFileUpload upload = new ServletFileUpload(factory);
//处理上传文件的路径中文乱码
upload.setHeaderEncoding(“UTF-8”);

二、解决表单字段的中文乱码:

new String(item.getString(“UTF-8”));

比如其中一项表单:

String value = new String(item.getString(“UTF-8”));

以此类推。

servlet中使用ServletFileUpload 出现中文乱码的解决方案相关推荐

  1. js 解析url中search时存在中文乱码问题解决方案

    一 问题出现原因 当存在这样一种需求,前端需要通过url中search返回值进行保存使用,但如果search中存在中文解析出来会导致乱码.这个问题我找了很久原因,最后终于知道解决方案,这里和大家分享一 ...

  2. java 过滤器 中文_java中Filter过滤器解决中文乱码办法

    java中Filter过滤器解决中文乱码办法 发布时间:2020-04-07 10:19:09 来源:亿速云 阅读:16 作者:小新 这篇文章主要为大家详细介绍了java中Filter过滤器解决中文乱 ...

  3. sublime text3 中 python3编译出现中文乱码解决方法

    sublime text3 中 python3编译出现中文乱码解决方法 参考文章: (1)sublime text3 中 python3编译出现中文乱码解决方法 (2)https://www.cnbl ...

  4. url中向后台传递中文乱码解决方法

    url中向后台传递中文乱码解决方法 参考文章: (1)url中向后台传递中文乱码解决方法 (2)https://www.cnblogs.com/shijiaoyun/p/3992446.html 备忘 ...

  5. Activiti保存.png 流程图片文件且解决idea中保存图片时显示中文乱码的解决方法

    Activiti保存.png 流程图片文件且解决idea中保存图片时显示中文乱码的解决方法 Eclipse 工具中的操作 流程图片生成的两种方式: 使用 activiti-designer 设计流程图 ...

  6. Tomcat 中 GET方式 请求 中文乱码 出现的原因

    网上很多关于GET方式请求中文乱码的解决方案,大体类似. 这里主要讲一下Tomcat在处理URL参数过程中, 究竟是为什么会导致了GET方式请求的中文乱码. 一句话概括就是: Tomcat默认将单字节 ...

  7. linux matlab 中文论坛,Linux中Matlab中文乱码问题解决方案

    Linux中Matlab中文乱码问题解决方案 由于Linux下Matlab的图形界面是用Java写的,所以只要搞定Java的中文显示就行了. 1.我Matlab2007a的JRE目录为:/opt/Ma ...

  8. 解决servlet resp.getWriter().println(“xxx“)中文乱码问题

    解决servlet resp.getWriter().println("xxx")中文乱码问题 只需三行代码 req.setCharacterEncoding("utf- ...

  9. js中html网页打开中文乱码

    js中html网页打开中文乱码 (1)一般为编码格式出问题. (2)源代码文件自身的编码格式和定义的不一样. 首先需要定义当前的文件编码格式为utf-8: <meta charset=" ...

最新文章

  1. 分类器可视化解释StylEx:谷歌、MIT等找到了影响图像分类的关键属性
  2. 机器学习-斯坦福:学习笔记6-朴素贝叶斯
  3. shell中echo使用单引号时输出单引号
  4. C语言中malloc为字符型指针分配内存引起的缓冲区泄露
  5. java基础总结(小白向)
  6. Oracle怎么算开始一个会话,oracle – 随机获取ORA-08177只有一个活动会话
  7. 8月9日 华为发布了其自研的鸿蒙操作系统,华为正式发布自研操作系统鸿蒙,面向AI全场景...
  8. 购物商城Web开发第二十二天
  9. Eclipse用SVN上传新项目
  10. win10 如何做到 C盘 的绝对干净,所有软件都安装到D盘,C盘只用来存操作系统。
  11. BS架构与CS架构的区别(最详细)
  12. java模拟简单的qq聊天_初学java之模拟QQ聊天软件(简单实现)
  13. 计算机组成原理 --- 数据信息的表示
  14. gcc -fpic 和 -fPIC 参数问题
  15. 数字图像处理 - 什么是数字图像处理
  16. 十、什么是临界资源及如何访问临界资源
  17. 计算机管理主分区改成逻辑分区,win10系统电脑的四个分区都是主分区,主分区如何改为逻辑分区?...
  18. seo策略_调整移动用户的SEO策略
  19. Google测试工师的一道面试题目
  20. 再见了,MySQL之父!

热门文章

  1. 中老年女装洞察报告:2900亿的中老年女装生意|60加研究院
  2. 【elk】网络设备syslog日志收集
  3. 玩游戏性能最好的计算机,游戏性能最好的笔记本电脑有哪些
  4. 设置允许用户利用itunes同步一些资源到我们的App中
  5. 用matlab设计病态系统,SS04_病态系统仿真.ppt
  6. 计算机专业统考参考英语作文,2018年同等学力申硕统考英语作文真题及参考范文...
  7. 博图Modbus组态及参数设定源码
  8. Android Studio 中列表视图(ListView)的应用
  9. 勇者游戏(巴什博弈)- HDU 1846
  10. 五款优秀录课软件推荐:让教师和自媒体创作者轻松录制高质量课程