java 中文乱码以及空格乱码解决方案总结

以下是我开发邮件发送和文件上传遇到的问题,总结如下:

 

1.

问题描述:下载文件时,出现空格或者中文乱码?

解决办法:

 

下载文件时:

response.reset(); // 非常重要 very important
        response.setContentType("application/msexcel;charset=UTF-8");
        String fileName =f.getName();
        String userAgent = request.getHeader("User-Agent"); 
        if(userAgent != null && userAgent.indexOf("MSIE") == -1) {  
            // FF   
            String enableFileName = "=?UTF-8?B?" + (new String(org.apache.commons.codec.binary.Base64.encodeBase64(fileName.getBytes("UTF-8")))) + "?=";  
            response.setHeader("Content-Disposition", "attachment; filename=" + enableFileName);
        }else{
            // IE   
            String enableFileName = new String(fileName.getBytes("GBK"), "ISO-8859-1");   
            response.setHeader("Content-Disposition", "attachment; filename=" + enableFileName);  

2.

问题描述:发送邮件时,接收端邮件标题乱码,附件乱码?

解决办法:

2.1:接收端邮件标题乱码,附件乱码的原因,我总结了两点:

A:中文乱码

B:空格乱码

具体的解决办法:

            sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();
            fileName = "=?GBK?B?" + enc.encode(fileName.getBytes()) + "?=";

 

 

以上描述仅作个人总结自用!

字符乱码的5大原因及解决方法一览! 作为一名程序员,我不得不说,字符乱码是我们经常遇到的一个令人头疼的问题。它不仅会影响我们的工作效率,还可能导致重要信息的丢失。但别担心,今天我就来和大家分享一下字符乱码的常见原因以及解决方法,让你以后遇到这种情况时不再手足无措。 首先,让我们来看看最常用的一种解决方案: 文本乱码转码助手(小白推荐,工具由"勤学道人"开发) 阅读详情

相关推荐

极具性价比的步进电机驱动芯片-TMC2226/TMC2209使用小结

TMC2226/2209相对于TMC2660C、TMC5160来说,价格低了很多,同时功能并没有太多阉割。对比TMC5160,少了内部加减速曲线,电流足够(Ipeak = 2.8A),相对5160而言功能也很足够,所以毫无疑问TMC2226是极具性价比的步进驱动芯片。

Trinamic_TMC的博客 7022

php输出的文字变成问号了,php imagick写文字,为什么空格会变成问号?

如果使用的Encoding是UTF-8的话,就会发生这种情况。问题的根源,在于UTF-8这种编码里面,存在一个特殊的字符,其编码是“0xC2 0xA0”,转换成字符的时候,表现为一个空格,跟一般的半角空格(ASCII 0x20)一样,唯一的不同是它的宽度不会被压缩,因此比较多的被用于网页排版(如首行缩进之类)。而其他的编码方式如GB2312、Unicode之类并没有这样的字符,因此如果简单地进行编...

weixin_35216188的博客 542

RML2016.10a (CNN、LSTM、CNN-LSTM、CNN-LSTM-Multi-head-attention, TensorFlow)

RML2016.10a (CNN、LSTM、CNN-LSTM、CNN-LSTM-Multi-head-attention, TensorFlow) 包含所有数据和代码,支持一键运行(jupyter)

qq_40999533的博客 1485

java 空格乱码_java 中文乱码以及空格乱码解决方案总结

当使用response.write返回JSON数据到前端时,需要在前面加上这句 response.ContentType = "text/html;charset=gb2312"; 完整的代码 前端: $(document).ready(function(){ AjaxHKmoHotel(); });以下是我开发邮件发送和文件上传遇到的问题,总结如下:1.问题描...

weixin_26907201的博客 1086

SAP-MM-采购申请字段解析

采购申请抬头以及行项目字段解析

yanzibing99的博客 7307

PADS VX2.7学习记录06-PADS Router软件功能操作

PADS VX2.7学习记录06-PADS Router软件功能操作

qq_31444421的博客 7863

解决空格乱码或者空格编码格式不正确的相关问题

       问题的关键,是编码方式:如果使用的Encoding是UTF-8的话,就会发生这种情况。问题的根源,在于UTF-8这种编码里面,存在一个特殊的字符,其编码是“0xC2 0xA0”,转换成字符的时候,表现为一个空格,跟一般的半角空格(ASCII 0x20)一样,唯一的不同是它的宽度不会被压缩,因此比较多的被用于网页排版(如首行缩进之类)。而其他的编码方式如GB2312、Unicode...

小白的博客 1万+

Unity中基于SkinMeshRenderer的骨骼动画换装系统优化实践

本文深入探讨了Unity中基于SkinnedMeshRenderer的骨骼动画换装系统优化实践。针对换装卡顿、显示错误等常见问题,文章剖析了SkinnedMeshRenderer的核心数据原理,对比了“数据替换”与“实体替换”两种主流方案的性能差异,并详细阐述了通过骨骼字典缓存、对象池管理、材质合并与Draw Call优化等实战技巧,构建高性能、高稳定性的生产级换装系统。

weixin_29008055的博客 314

汉字编码之GBK编码(附完整码表)

继续字符编码的学习。今天介绍一下GBK(汉字内码扩展规范),GB 2312 GB18030。引用网友的话可以概括一下: GBK和UTF8的区别:GBK就是在保存你的帖子的时候,一个汉字占用两个字节。。外国人看会出现乱码,此为我中华为自己汉字编码而形成之解决方案。 UTF8就是在保存你的帖子的时候,一个汉字占用3个字节。。但是外国人看的话不会乱码,此为西人为了解决多字节字符而形成之解决方案。 GBK编码是GB2312编码的超集,向下完全兼容GB2312。 GB18030编码向下兼容GBK和GB2312, GB

郭晓东的专栏 83万+

Lama:基于傅立叶卷积的分辨率鲁棒性大掩模修复

为了缓解修复网络和损失函数都缺乏有效的感受野这个问题,提出了大掩模修复(LaMa)。LaMa基于一种新的修复网络架构,该架构使用快速傅立叶卷积(FFC),具有图像范围的感受野;高感受野感知损失;大型训练掩码,释放前两个组件的潜力。

qq_44926214的博客 1418

矢量网络分析仪校准:原理、方法与系统适配性

矢量网络分析仪(VNA)校准是射频测量的关键环节,通过误差建模(12项误差项)和标准件测量,可将系统不确定度从±5dB降至±0.1dB以下。主流校准方法包括SOLT(适用于同轴系统)和TRL(适用于波导系统),二者在标准件、误差重点及频率上限等方面存在显著差异。随着6G与量子通信的发展,动态实时校准将成为新趋势。工程师需根据传输结构、频率范围及精度需求选择合适方法,确保测量精度。

u014344410的博客 263

java中火狐地址栏中文,整理java文件下载(中文乱码、火狐浏览器乱码、空格变+号、文件...

整理java文件下载(中文乱码、火狐浏览器乱码、空格变+号、文件整理java文件下载(中文乱码、火狐浏览器乱码、空格变+号、文件名包含空格时文件名可能显示不全等问题)首先感谢网上各路大仙提供的资料:(参考如下)Java文件下载处理中文名(使用URLEncoder编码及空格变+解决);FIREFOX 下载中文文件名出现乱码的java解决方案;用火狐浏览器下载中文文件名的文件乱码及其解决;解决atta...

weixin_39539563的博客 327

066、AR 应用中虚拟物体漂移抖动?IMU 融合 + 光流追踪的视觉里程计优化方案

AR应用中虚拟物体漂移抖动优化方案 摘要:针对AR应用中虚拟物体漂移抖动问题,提出一种IMU融合与光流追踪的视觉里程计优化方案。关键点包括:1) 采用IMU预积分技术处理高频噪声,通过中值积分计算帧间相对运动约束;2) 使用金字塔LK光流追踪像素运动,通过中值偏差法剔除异常值;3) 构建10帧滑动窗口的紧耦合优化框架,将IMU预积分约束和光流重投影约束联合优化。实验表明,该方法有效解决了时间戳未对齐导致的"跳舞箭头"现象,在手机端实现稳定30fps的AR定位精度,漂移误差降低至厘米级。特别提醒:IMU与视觉

ai技术增长的博客 161

解决Java getResource 路径中含有中文的情况

问题描述   当Java调用getResource方法,但是因为路径中含有中文时,得不到正确的路径 问题分析   编码转换问题   当我们使用ClassLoader的getResource方法获取路径时,获取到的路径被URLEncoder.encode(path,"utf-8")编码了,当路径中存在中文和空格时,他会对这些字符进行转换,这样,得到的往往不是我们想要的真实路径,所以我们可以调...

weixin_34303897的博客 1201

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

url 中文 java_解决Java工程URL路径中含有中文的情况

问题:当Java工程路径中含有中文时,得不到正确的路径解决:这其实是编码转换的问题。当我们使用ClassLoader的getResource方法获取路径时,获取到的路径被URLEncoder.encode(path,"utf-8")编码了,当路径中存在中文和空格时,他会对这些字符进行转换,这样,得到的往往不是我们想要的真实路径,所以我们可以调用URLDecoder.decode()方法进行解码,以...

weixin_42401281的博客 853

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

乱码解决

有时在 Java 中获取文件路径时,如果路径中存在一些特殊字符,如 %、& 符号等,或者是存在中文,亦或是存在空格的时候,路径就有可能出现乱码解决方案有以下几种:在获取到路径后,进行一次编码 String path = this.getClass().getClassLoader().getResource("文件路径").getPath().substring(1); path = ...

weixin_30657541的博客 124

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

文件下载 response.setHeader()下载中文文件名乱码问题 解决办法

response.setHeader()下载中文文件名乱码问题[转] 首先展示我的解决问题的代码: response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8")); 1. HTTP消息头 (1)通用信息头 即能用于请

Hurry的专栏 6295

java非法字符_Java语言基础(HelloWorld案例)

1:在D:ITpackagesjdkjdk7bin目录下新建一个文本文件:HelloWrold.java2:打开HelloWorld,编写程序,编辑完保存3:在bin目录下执行cmd,进入命令窗口4:javac HelloWorld.java 编译程序5:java HelloWorld 运行程序,输出aaa需:注意中文乱码问题, 编译时:javac -encoding utf-8 HelloWo...

weixin_31782323的博客 557

【Tomcat】阿帕奇雄猫的下载安装+配置环境变量+乱码解决

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为比较流行的Web 应用服务器。

ebb29bbe的博客 2752

IT第二天 - JAVA环境的配置、Hello的编写

IT第二天 上午 HTML的一些讲解 下午 JDK的安配置 JAVA语法的注意事项 Hello的编写 晚上 作业 对println的应用 笔记 1.Classpath环境...

weixin_30950607的博客 60

BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(filePath), “UTF

*使用第三方库:**Java 中的一些第三方库(如 Apache Commons IO)提供了更方便的文件读取方法,并且可以自动处理不同编码格式的文件。**使用正确的编码格式转换工具:**如果您确定文件的编码格式与您指定的编码格式不匹配,您可以尝试使用专门的编码格式转换工具将文件转换为正确的编码格式。如果您希望读取整行内容,包括行末尾的空格,您可以尝试使用。如果您不确定文件的编码格式,您可以尝试使用其他常见的编码格式,如 GBK 或者 ISO-8859-1,并检查哪种编码格式可以正确读取文件。

qq_33192454的博客 1466

浅谈MIME之文件下载

浅谈MIME之文件下载 要实现文件下载,我们只需要设置两个特殊的相应头。 它们是什么头?如果文件名带中文,该如何解决? 两个特殊的相应头: Content-Type: application/octet-stream 它定义了数据的类型,以便数据能被适当的处理。有效的类型有:text,image,audio,video,applications,multipart和message...

lingtouyang的博客 2451

java的bug记录贴

文章目录Java读取配置文件(.properties)中文乱码解决 Java读取配置文件(.properties)中文乱码解决 解决办法 在线ASCII编码汉字互转

ljm_99的博客 177

JAVA反射使用实例和class.getResource()得到URL中含有中文和空格乱码问题

package invoke; import java.lang.reflect.Method; public class T1 {  public static void main(String[] args) throws Exception {   // 1.普通方法反射--invoke.T3类全路径   // new Class[]{String.class,String.cla

mike_caoyong的专栏 2950

jdk过时和maven仓库指定错误

本文介绍了运行开源项目是常出现的jdk过时警告和maven仓库指定乱码的解决方案

weixin_54946088的博客 356
上一篇: java web读取属性文件的几种方式总结
下一篇: Apache Commons工具集简介
programloverjack
博客等级 码龄17年 5粉丝 252原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值