JavaMail文本附件内容怎么是乱码? 本地指定文件是UTF-8编码,用google的smtp发到yahoo的邮箱,google和yahoo的附件内容都显示乱码如果指定文件编码是GBK,在信箱中的显示结果正确请教如何才能在JavaMail中指定附件内容的编码? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 编码格式问题而已 看下API吧~~ 直接使用msg.setSubject("中文主题"),或者msg.setSubject("中文主题".getBytes("8859_1"), "GB2312"))都一样会出现乱码。在设置邮件主题前需要将主题字串的字节编码为BASE64格式,并添加编码头,示例代码如下: sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder(); msg.setSubject("=?GB2312?B?"+enc.encode(subject.getBytes())+"?="); msg.setSubject();是设置邮件标题我说的是附件的内容 google和yahoo的附件内容默认就是取用户操作系统的吧。所以应该就是GBK或者GB2312了。上传附件时,对于UTF编码的附件,可以先转换成GBK再入库,这样就行了。 唉,没那么复杂,setHeader一下就ok了 关于菜单点击没反应 一个JAVA小问题,高手讲解一下(蛮有意思) 我是一个java初学者!想买java入门书..请大家推荐几本!谢谢~~~在线等待 如何得到当前时间一个月以前的日期? 看看这个程序有什么问题呀。 如何转换 菜鸟的一段代码 请能人帮看看 哪里错了 注释很清楚 散50分,请教:如何将(4*(100+0.8)-1)表达式储存为数组? 玩完了,都不知道怎么下载(解决了立即给分)--菜鸟问题 Java 多线程典型的生产者与消费者问题,有些不理解,请指教。 连接数据库 怪问题。。。。 如何判断Vector为空?
sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder(); msg.setSubject("=?GB2312?B?"+enc.encode(subject.getBytes())+"?=");
我说的是附件的内容
上传附件时,对于UTF编码的附件,可以先转换成GBK再入库,这样就行了。