我去收自己163邮箱中的头20封邮件,有19封的标题是正常的,只有百度知道的是乱码。如果我将编码从iso8859-1转到gb2312,那么百度的正常了,其他的就乱码了。我用System.out.println(((MimeMessage)messages[i]).getHeader("SUBJECT")[0]);来输出相关信息,发现其他19封邮件都是=?GBK?B?、=?UTF-8?B?、=?GB2312?B?开头的,但是百度的邮件还是乱码。试过了csdn上哦很多办法,还是得不到解决。我在想,有没有能够判断字符串是什么编码集的办法?