跨平台unicode支持

时间:2008-09-02 06:58:35

标签: java c perl unicode cross-platform

我发现在我的跨平台应用程序中获得Unicode支持真的很痛苦。

我需要可以从C代码到数据库,到Java应用程序和Perl模块的字符串。其中每个都使用不同的Unicode编码(UTF8,UTF16)或其他一些代码页。我需要的最重要的事情是跨平台的转换方式。

人们使用什么样的工具,库或技术来处理这些事情?

4 个答案:

答案 0 :(得分:3)

答案 1 :(得分:2)

Perl将Encode作为标准库。它可以用来读/写你想要的任何编码,这样就不会有问题了。

答案 2 :(得分:0)

你是如何进行跨平台通话的?它是从Java调用的吗?

http://java.sun.com/docs/books/tutorial/i18n/text/string.html可能有用。

我对你想要做的事情感到有点困惑。数据库本质上是所有代码之间的接口吗?然后它应该很简单 - 只需使用数据库UTF-8,每个客户端都需要进行自己的转换。

听起来像一个有趣的问题,你能分享更多细节吗?

答案 3 :(得分:0)

嗯,我猜iconv足以满足您的需求。默认情况下,Iconv应该可以在任何POSIX系统上使用(包括(GNU /)Linux,* BSD,Mac OS X ......)。在Windows AFAIK上,它需要单独的库,但是:

  1. 您可以使用您的软件/静态编译它来安装它/ bundle。 (libiconv for windows)。 (我猜我会建议捆绑它。)
  2. 您可以使用一些本机Windows调用作为特例。
  3. 当然,如果您使用的是Java,它内置了它 - 但我发现它可能不是您想要的(JNI调用很昂贵)。

    PS。你不能将perl设置为特定的编码吗?