首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >手动加载Java字符集

手动加载Java字符集
EN

Stack Overflow用户
提问于 2011-06-10 23:30:23
回答 2查看 6.2K关注 0票数 8

我正在使用Java做一些工作,我遇到了JavaMail本身不支持的编码(按照设计),比如UTF7/unicode-1-1-utf-7。特别是对于这种编码,我找到了Java Charset和UTF7的CharsetProviderJUTF7实现。然而,将jutf7.jar添加到我的类路径后,我仍然得到了JUTF7,并且unicode-1-1-utf-7绝对是UnsupportedEncodingException的别名之一。

有没有办法手动加载Charset或确保正在加载Charset,这样我就可以排除这是一个原因?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-11 02:27:59

除了将必要的类放入类路径之外,还需要使用新的字符集。引用Javadoc的话:

字符集提供程序使用META-INF/

资源目录中名为java.nio.charset.spi.CharsetProvider的提供程序配置文件标识自身。该文件应该包含一个完全限定的具体字符集提供程序类名的列表,每行一个。..。

( http://download.oracle.com/javase/6/docs/api/java/nio/charset/spi/CharsetProvider.html )

这个特殊的文件是否存在于JAR中?

票数 7
EN

Stack Overflow用户

发布于 2012-06-21 15:51:14

您应该确保jar由主类加载器加载。您可以通过将jar添加到JVM的jre/lib/ext扩展目录或将其添加到主程序的类路径来实现这一点。例如,如果您正在使用Tomcat,请将-cp /path/to/jutf7.jar添加到Tomcat的启动脚本中。

类似地,如果您希望从scala REPL测试jutf7,则需要按如下方式启动它

代码语言:javascript
运行
复制
env JAVA_OPTS="-cp /path/to/jutf7-1.0.0.jar" scala

使用Java HotSpot(TM) 64-Bit Server VM (build 20.8-b03-424, mixed mode)进行测试

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6308587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档