JAVA汉化的问题 这样就好了topic = new String(topic,"GB2312"); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不好意思刚才看错了应该是这个方法MimeMessage.setSubject(topic, "gb2312"); 能否不用java mail的包呢?我想自己实现POP3,现在就是如何把一个字符串汉化的问题 topic = new String(topic.getBytes("源格式"),"GB2312"); 我觉得它的源格式应该是gb2312了,看这个字符串“Subject: =?gb2312?B?xOO6ww==?=”本身就含有一个"gb2312"。但就是解不出来中文。这封邮件时是用OUTLOOK发的,假如用OUTLOOK接收能够很好地显示成中文“你好”,但JAVA就是不晓得怎么解。 邮件Subject的编码问题 一般是base64 public static String parseSubject(String string){ String str = ""; if(string==null)return ""; try { if(string.startsWith("=?GB")||string.startsWith("=?gb")){ str=MimeUtility.decodeText(string); }else if(string.toLowerCase().startsWith("=?big5")){ str = charToBig(MimeUtility.decodeText(string)) ; }else if(string.toLowerCase().startsWith("=?utf-8")){ str = charToUTF(MimeUtility.decodeText(string)); }else { str = charTogb(MimeUtility.decodeText(string)); } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return str; } public static String charTogb(String string) throws UnsupportedEncodingException{ return new String(string.getBytes("ISO-8859-1"),"GBK"); } public static String charToBig(String string) throws UnsupportedEncodingException{ return new String(string.getBytes("big5"),"GBK"); } public static String charToUTF(String string) throws UnsupportedEncodingException{ return new String(string.getBytes("UTF-8"),"GBK"); } str=MimeUtility.decodeText(string);一句是解决问题的关键!多谢“XQC”!给分当然没的说! 高手指点 怎样用java文件生成一个xml文件 正则表达式中如果包含双引号,如何转义? 一个方法调用的问题。 线程中怎么把变量传出来 两个文本区的选取问题,比较菜,希望大家来帮帮忙:) 图像处理:2张图片的合成 如何在关闭一个窗体时打开另一个窗体 java算法 希尔排序 【请问】如何打开一个已有的文件?谢谢 请问:JAVA中怎样调用外部程序? 急求jspsmartupload.zip 能否给发一个 谢谢! (在线等)急啊!
String str = "";
if(string==null)return "";
try {
if(string.startsWith("=?GB")||string.startsWith("=?gb")){
str=MimeUtility.decodeText(string);
}else if(string.toLowerCase().startsWith("=?big5")){
str = charToBig(MimeUtility.decodeText(string)) ;
}else if(string.toLowerCase().startsWith("=?utf-8")){
str = charToUTF(MimeUtility.decodeText(string));
}else {
str = charTogb(MimeUtility.decodeText(string));
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return str;
}
public static String charTogb(String string) throws UnsupportedEncodingException{
return new String(string.getBytes("ISO-8859-1"),"GBK");
}
public static String charToBig(String string) throws UnsupportedEncodingException{
return new String(string.getBytes("big5"),"GBK");
}
public static String charToUTF(String string) throws UnsupportedEncodingException{
return new String(string.getBytes("UTF-8"),"GBK");
}