在方法体中可以将 content 打印出来, 但是不能将 content 返回,
如果直接返回一个string的话,是可以接收到的,
很诡异的问题啊...虚心求教! public static String getMailContent(Part part)throws Exception{
StringBuffer bodytext = new StringBuffer();
String contenttype = part.getContentType();
int nameindex = contenttype.indexOf("name");
boolean conname =false;
if(nameindex != -1) conname=true;
//System.out.println("CONTENTTYPE: "+contenttype);
if(part.isMimeType("text/plain") && !conname){
bodytext.append((String)part.getContent());
}else if(part.isMimeType("text/html") && !conname){
bodytext.append((String)part.getContent());
}else if(part.isMimeType("multipart/*")){
Multipart multipart = (Multipart)part.getContent();
int counts = multipart.getCount();
for(int i=0;i <counts;i++){
getMailContent(multipart.getBodyPart(i));
}
}else if(part.isMimeType("message/rfc822")){
getMailContent((Part)part.getContent());
}
String content = bodytext.toString();
System.out.println(content);
return content;
}
在其他方法中调用该方法,取到的值为空... String content = getMailContent((Part)msg);
System.out.println("内容:" + content); 代码没有BUG 可以正常运行 控制台输出:第11封邮件
发件人:[email protected]
主题:图片邮件
发送日期:2009-05-11 09:53:25
大小:46KB
CONTENTTYPE: multipart/mixed;
boundary="----=_Part_0_17028773.1242021172390"
CONTENTTYPE: multipart/related;
boundary="----=_Part_1_17713075.1242021172437"
CONTENTTYPE: text/html;charset=GB2312
带图片的邮件! <img src="cid:qq">
CONTENTTYPE: application/octet-stream
内容: ------------------------ 多了一行 CONTENTTYPE: application/octet-stream
是什么意思?
如果直接返回一个string的话,是可以接收到的,
很诡异的问题啊...虚心求教! public static String getMailContent(Part part)throws Exception{
StringBuffer bodytext = new StringBuffer();
String contenttype = part.getContentType();
int nameindex = contenttype.indexOf("name");
boolean conname =false;
if(nameindex != -1) conname=true;
//System.out.println("CONTENTTYPE: "+contenttype);
if(part.isMimeType("text/plain") && !conname){
bodytext.append((String)part.getContent());
}else if(part.isMimeType("text/html") && !conname){
bodytext.append((String)part.getContent());
}else if(part.isMimeType("multipart/*")){
Multipart multipart = (Multipart)part.getContent();
int counts = multipart.getCount();
for(int i=0;i <counts;i++){
getMailContent(multipart.getBodyPart(i));
}
}else if(part.isMimeType("message/rfc822")){
getMailContent((Part)part.getContent());
}
String content = bodytext.toString();
System.out.println(content);
return content;
}
在其他方法中调用该方法,取到的值为空... String content = getMailContent((Part)msg);
System.out.println("内容:" + content); 代码没有BUG 可以正常运行 控制台输出:第11封邮件
发件人:[email protected]
主题:图片邮件
发送日期:2009-05-11 09:53:25
大小:46KB
CONTENTTYPE: multipart/mixed;
boundary="----=_Part_0_17028773.1242021172390"
CONTENTTYPE: multipart/related;
boundary="----=_Part_1_17713075.1242021172437"
CONTENTTYPE: text/html;charset=GB2312
带图片的邮件! <img src="cid:qq">
CONTENTTYPE: application/octet-stream
内容: ------------------------ 多了一行 CONTENTTYPE: application/octet-stream
是什么意思?
解决方案 »
- String sql = "select count(*) cou frome t_book";出错 javaweb分页技术
- java derby数据库使用报错java.lang.ClassNotFoundException: org.apache.derby.jdbc.Embedde
- jsp文件上传问题,高手请指教
- 安全问题:如何避免被列目录
- MesssageFormat的类不太明白
- 有一个字符串是繁体字的能否转换成简体中文,如果行又该如何转换呢?另外如何查看某字符串“ABCD”是否包含“C”呢?
- 关于转码问题,如何将16进制码转成String
- 我觉得使用jsp的taglib已经可以解决很多显示和业务分离的问题,可是为何...
- 急招项目经理
- 真的摸不到头,谁能帮助我!!高分求题
- window.showModalDialog模式窗口接受不到值
- 勤奋的小鸟求学习SSH框架的方法
将StringBuffer定义在方法体外边就可以了 private StringBuffer bodytext = new StringBuffer();
public String getBodyText(){
return bodytext.toString();
}