jms接收邮件一些中文乱码有关问题

jms接收邮件一些中文乱码问题

      今天整理代码时偶然看到之前随意写的jms收发邮件的小程序,运行了一下发现一些中文乱码问题。总的来说就是编码使用的方式不用,有Base64,QP之类

 

String fileName = part.getFileName(); // 得到未经处理的附件名字

	// 文件名一般都经过了编码
	// base64解码
	if (fileName.indexOf("B?") != -1) {
		fileName = base64Decoder(fileName.substring(fileName.indexOf("B?") + 2, fileName.indexOf("?=") - 1));
	}
	// QP编码 
	else if(fileName.indexOf("Q?") != -1){
		try{
			fileName = MimeUtility.decodeText(fileName); //再重新解码
		} catch(Exception e){
			e.printStackTrace();
		}
	}