`
yangyi
  • 浏览: 114551 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Apache commons-Email中文问题的解决办法

    博客分类:
  • Java
阅读更多
Apache commons-email是对javamailAPI的一层封装,经封装后的发送邮件的代码变得极为简单,但这里有一个中文支持的小问题。
commons-email主要的封装类是Email类,这是一个抽象类,该框架给出了SimpleEmail的默认实现,但该实现并不支持中文,即使调用Email的setCharset也不起作用。
事 实上,SimpleEmail调用了Email超类中的setContent方法来设置邮件内容(通过setMsg方法),而在设置内容时,又采用了默认 的英文字符集,我们只要在代码中直接调用email类的setContent方法就可以支持中文了,但要注意setContent具备两个参数,第一个是 内容对象,第二个则是内容类型,我们把第二个参数设置为:
SimpleEmail.TEXT_PLAIN + "; charset=utf-8", 即可。理由如下面源代码所示:
java 代码
 
  1. public void setContent(Object aObject, String aContentType)  
  2.     {  
  3.           ......  
  4.             // set the charset if the input was properly formed  
  5.             String strMarker = "; charset=";  
  6.             int charsetPos = aContentType.toLowerCase().indexOf(strMarker);  
  7.   
  8.             if (charsetPos != -1)  
  9.             {  
  10.                 // find the next space (after the marker)  
  11.                 charsetPos += strMarker.length();  
  12.                 int intCharsetEnd =  
  13.                     aContentType.toLowerCase().indexOf(" ", charsetPos);  
  14.   
  15.                 if (intCharsetEnd != -1)  
  16.                 {  
  17.                     this.charset =  
  18.                         aContentType.substring(charsetPos, intCharsetEnd);  
  19.                 }  
  20.                 else  
  21.                 {  
  22.                     this.charset = aContentType.substring(charsetPos);  
  23.                 }  
  24.             }  
  25.         }  
  26.     }  
即有一个文本解析的过程。即有一个文本解析的过程。
分享到:
评论

相关推荐

    commons-email-1.5.jar

    《Android应用中使用Apache Commons Email库发送邮件》 在Android应用程序开发中,有时我们需要集成邮件发送功能,以便向用户发送验证码、通知或者提供其他服务。Apache Commons Email库是一个强大的Java库,它简化...

    commons-email-1.5-API文档-中英对照版.zip

    包含翻译后的API文档:commons-email-1.5-javadoc-API文档-中文(简体)-英语-对照版.zip; Maven坐标:org.apache.commons:commons-email:1.5; 标签:apache、commons、email、中英对照文档、jar包、java; 使用方法...

    用commons-email-1.2.jar实现发邮件功能

    在Java编程中,发送电子邮件是一项常见的任务,Apache Commons Email库为开发者提供了便利的API来实现这一功能。本篇文章将详细讲解如何使用`commons-email-1.2.jar`这个开源库来实现邮件发送,并通过`...

    mail.jar、commons-email-1.2.jar 、activation.jar下载

    - `commons-email-1.5-javadoc.jar`:包含Apache Commons Email 1.5版本的Java文档,开发者可以查阅这些文档了解详细API信息。 - `commons-email-1.5-sources.jar`:包含了源代码,对开发者来说非常有用,他们可以...

    commons-email-1.5-API文档-中文版.zip

    标签:apache、commons、email、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...

    邮件发送--commons-email-1.4.jar

    在Java编程环境中,发送电子邮件是一项常见的任务,而`commons-email-1.4.jar`是Apache Commons Email库的一个版本,这个库专门设计用于简化Java中的邮件发送。Apache Commons Email是Apache软件基金会开发的一个...

    apache-jakarta旗下的所有开源项目jar文件

    apache-jakarta-commons-email.jar apache-jakarta-commons-fileupload.jar apache-jakarta-commons-httpclient.jar apache-jakarta-commons-io.jar apache-jakarta-commons-lang.jar apache-jakarta-commons-...

    apache commons jar(commons所有的jar包,从官网下载提供给大家)

    daemon-1.0.15-bin commons-dbutils-1.6-bin commons-digester3-3.2-bin commons-el-1.0 commons-email-1.4-bin commons-fileupload-1.0 commons-fileupload-1.1.1 commons-fileupload-1.1 commons-file upload-...

    activation.jar commons-email-1.2.jar mail.jar免费下载

    2. **commons-email-1.2.jar**:这是Apache Commons Email库的一个版本,它为Java开发者提供了一个简单易用的API来创建和发送电子邮件。这个库支持HTML邮件、多部分/附件邮件、SSL/TLS连接,以及许多其他高级特性,...

    apache commons jar(commons所有的jar包,从官网下载提供.zip

    apache commons jar(commons所有的jar包,从官网下载提供给大家) 因为涉及jar太多,包括有src源代码,只需要3分,希望大家理解,我也是从官网花了很长时间才一个一个下完,需要的请自取。全部是zip文件,每个对应的...

    commons-email-1.4.jar

    5. **错误处理**:Apache Commons Email 提供了详细的异常处理机制,当邮件发送失败时,会抛出相应的异常,帮助开发者快速定位问题。 6. **邮件模板**:对于需要大量发送格式一致的邮件,如批量通知或营销邮件,...

    commons-email需要的几个包

    Apache Commons Email 是一个Java库,专门用于简化电子邮件的创建和发送。这个库是Apache Commons项目的一部分,它提供了许多高级功能,使得开发人员可以方便地处理复杂的邮件操作,而不需要直接与JavaMail API进行...

    commons-email jar

    Apache Commons项目是Apache软件基金会的一部分,致力于提供一系列通用的Java工具和库,以解决常见的编程问题。 Commons Email是这些库之一,专注于邮件处理。 1. **电子邮件构建**: Commons Email提供了`Email`类...

    commons-email-1.1.jar

    `commons-email-1.1.jar`是Apache Commons Email项目的一个版本,它提供了一个简单易用的接口来构建和发送电子邮件。下面将详细介绍这些关键库以及它们在邮件发送中的作用。 首先,`commons-email-1.1.jar`是Apache...

    Java Mail和Commons-email发简单的邮件所用到的jar包

    JavaMail和Apache Commons Email是Java平台上用于发送电子邮件的两个重要库。这两个库为开发者提供了方便的API,使得在Java应用程序中实现邮件发送功能变得简单易行。以下将详细阐述这两个库以及它们所需的jar包。 ...

    Apache Commons 所有包最新版本 含SRC (6/7)

    commons-attributes-2.2-src.zip commons-attributes-2.2.zip commons-beanutils-1.8.0-BETA-src.zip commons-beanutils-1.8.0-BETA.zip commons-betwixt-0.8-src.zip commons-betwixt-0.8.zip ...

    用commons-email-1.1.jar实现发邮件功能:

    在Java编程中,发送电子邮件是一项常见的任务,Apache Commons Email库为开发者提供了便利的API来实现这一功能。`commons-email-1.1.jar`是Apache Commons Email项目的一个版本,它简化了构建和发送电子邮件的过程。...

    commons-email-1.5-src.zip

    Apache Commons Email库是Java开发人员用来简化电子邮件发送过程的一个强大工具。这个库是Apache Commons项目的一部分,它专注于提供一个简单且灵活的API,用于构建和发送复杂的电子邮件。"commons-email-1.5-src....

    commons-email-1.1.rar源文件及jar文件

    虽然这里是1.1版本,但Apache Commons Email已经发展到更高版本,每个新版本通常会修复已知问题,增加新功能,提升性能。因此,建议检查最新版本以获取最佳体验和最新特性。 8. **与其他库的集成** Apache ...

    activation/commons-email/mail.jar

    总的来说,`activation/commons-email/mail.jar`这些文件组合在一起,为Java开发者提供了一套完整的邮件发送解决方案。Apache Commons Email库的便捷性结合JavaMail API的强大功能,使得在Java应用程序中发送邮件变...

Global site tag (gtag.js) - Google Analytics