我的课程作业是电子邮件客户端,我使用pop3来获取电子邮件字符串,如:
主题:=?UTF-8?B?6L + Z5piv5Li76aKY?=
然后我用regexp获取 6L + Z5piv5Li76aKY ,用Base64解码它,我的Eclipse工作区是UTF-8。它显示如下:���L_���/�y�+�..�,但它本来就是中文这是主题
如何正确显示?电子邮件的内容运作良好,并且使用Base64和UTF-8进行编码,但主题无法正常工作。
这是代码
if (buf.startsWith("Subject:")) {
String regex = "=\\?UTF-8\\?B\\?(.*)\\?=";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(buf);
while (m.find()) {
subject = MyBase64.getFromBASE64(m.group(1));
}
subject = MyBase64.getFromBASE64(buf.substring(8));
System.out.println(subject);
}
答案 0 :(得分:0)
嗯,我的方法是对的。 而我只是犯了一个愚蠢的错误〜抱歉:D