Java|Java基础
java
Java-Java基础
汇编转换 源码,ubuntu为啥无法联网,tomcat的原理及作用,黑帽爬虫,php sql预处理,seo分词seo推广的好处lzw
JAVA文件下载时乱码有两种情况:(推荐:java视频教学)
源码as,vscode 界面设计,ubuntu出现PCIB,多个tomcat部署拥挤,sqlite网页设计数据库,爬虫爬虫爬虫怎么写,mysql php 电商,大连seo排名优化,小型门户网站模板,cms 政府网站 模板 div csslzw
1,下载时中文文件名乱码
手机麻将游戏软件源码,vscode波浪线关不掉,ubuntu装live,tomcat js输出乱码,kafaka是爬虫,php常用开发框架,seo入职该做什么,苹果cms能不能指定网站采集,帝国cms 动态模板lzw
2,下载时因为路径中包含中文文件名乱码,提示找不到文件
解决方法见下面部分代码
response.setContentType("multipart/form-data"); String userAgent = request.getHeader("User-Agent"); String oraFileName = meetingFile.getFileName(); String formFileName=oraFileName;// 针对IE或者以IE为内核的浏览器: if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {formFileName = .URLEncoder.encode(formFileName, "UTF-8"); } else {// 非IE浏览器的处理:formFileName = new String(formFileName.getBytes("UTF-8"), "ISO-8859-1"); } response.setHeader("Content-disposition", String.format("attachment; filename=\"%s\"", formFileName)); response.setContentType("application/vnd.ms-excel;charset=utf-8"); response.setCharacterEncoding("UTF-8"); ServletOutputStream out; // 通过文件路径获得File对象 File file = null; if (meetingFile != null) {file = new File(path + "upload/"+oraFileName); }
(1)如果第一种乱码类型,下载页面遇到以下的中文乱码问题
用以下代码解决
(2)如果下载遇到第二种乱码问题,如图:
用以下代码解决:即首先确保tomcat ,eclipse等为utf-8编码
然后JAVA中这样与第一种对文件名编码分开,使它们分别编码,互不影响。
更多java知识请关注java基础教学栏目。