javamail的getContent()抛出UnsupportedEncodingException的解决方法
2007-07-26 16:27
295 查看
当使用
String s;
if (part.isMimeType("text/plain")) ...{
try ...{
s = part.getContent();
} catch (UnsupportedEncodingException uex) ...{
InputStream is = part.getInputStream();
/**//*
* Read the input stream into a byte array.
* Choose a charset in some heuristic manner, use
* that charset in the java.lang.String constructor
* to convert the byte array into a String.
*/
s = convert_to_string(is);
} catch (Exception ex) ...{
// Handle other exceptions appropriately
}
}
getContent()时,文本主体部分(例如主类型是“text”的主体部分)返回 Unicode 字符串对象。通常,这些主体部分内部用某些非 Unicode 字符集保持文本数据。JavaMail(通过 "text/plain" DataContentHandler)试着将那些数据转换成 Unicode 字符串。基础 JDK 的字符集可用于做这种工作。如果 JDK 不支持特别的字符集,那么就引发 UnsupportedEncodingException。在这种情况下,可以使用
getInputStream()方法来将内容作为字节流检索。下面是一个例子:
String s;
if (part.isMimeType("text/plain")) ...{
try ...{
s = part.getContent();
} catch (UnsupportedEncodingException uex) ...{
InputStream is = part.getInputStream();
/**//*
* Read the input stream into a byte array.
* Choose a charset in some heuristic manner, use
* that charset in the java.lang.String constructor
* to convert the byte array into a String.
*/
s = convert_to_string(is);
} catch (Exception ex) ...{
// Handle other exceptions appropriately
}
}
相关文章推荐
- JAVA关于java.io.unsupportedencodingexception解决方法
- wp7使用POST请求Asp.net网页时,HttpWebRequest的BeginGetResponse方法抛出NotSupportException异常的解决方法
- java.lang.NullPointerException: Attempt to get length of null array的解决方法
- HttpURLConnection.getContentLength()为-1 解决方法
- MyEclipse6.5_org.tigris.subversion.javahl.ClientException: Unsupported working copy format问题解决方法
- 解决android.content.res.Resources NotFoundException的一个方法
- android.util.AndroidRuntimeException: requestFeature() must be called before adding content 错误解决方法
- android.content.res.Resources$NotFoundException 的解决方法
- 使用javamail出现java.net.SocketException: Network is unreachable: connect异常 解决方法
- 关于Servlet中连接mysql抛出ClassNotFoundException这个异常的解决方法
- getContentLength()为-1 解决方法
- com.caucho.jsp.JspParseException: illegal utf8 encoding at 0x 解决方法
- 调用FTPClient 的getModificationTime方法时抛出 ArrayIndexOutOfBoundsException异常的解瘊办法
- 编写servalet时引入第三方类抛出classnotfoundexception异常解决方法
- Unity安卓报错解决方法:android.content.res.Resources$NotFoundException
- JavaMail使用getMessageByUID方法获取腾讯邮箱失败的解决方法
- android.content.ReceiverCallNotAllowedException: 解决方法
- eclipse:xml-apis jar包冲突导致的getTextContent()方法无法找到解决
- JavaWeb中的乱码码问题解决,setHeader("Content-type",xxx),setCharacterEncoding()方法的区别
- 关于使用super.getHibernateTemplate()中的方法报java.lang.NullPointerException的解决办法