`
JAVA天地
  • 浏览: 676698 次
  • 性别: Icon_minigender_1
  • 来自: 太原
文章分类
社区版块
存档分类
最新评论

使用native2ascii实现国际化及不同平台的移植

阅读更多

对于不同编码,一直以来都是一个问题,对于我们来说就是中文乱码的问题,这是个什么学JAVA的人都会问上并遇上N次的问题,在编码C/S的JSP的程序的时候也会遇到,我们可以采用过滤器的方式,实现统一编码,以使其不会出现乱码,但是有些时候却又不适合采用过滤器,如将WINDOWS编写的JAVA程序拿到LINUX或者是UNIX系统上,多半是乱码,并且如果不熟悉或者是身边没有这些系统的高手,只有摇头叹头了。

现在有了这个东西,可以将其它非UNICODE编码转换成UNICODE的形式,移植到任何系统上都不会出现乱码的问题了,这个小程序在在JDK的bin目录下,使用语法是:

native2ascii [-reverse] [-encoding 编码] [输入文件 [输出文件]]

其中的-reverse是UNICDOE为当前系统所对应的编码,"-encoding 编码"表示将当前系统的指定编码转换为unicode,这个选项可以省略,默认为当前系统对应的编码,输入文件为源文件,输出文件是目标文件,如有一个test.properties,其中的内容为:

#This is a test
test=这是测试的中文原文

采用命令:native2ascii -encoding GBK test.properties testunicode.properties执行后,test

unicode.properties的内容如:

#This is a test
test=\u8fd9\u662f\u6d4b\u8bd5\u7684\u4e2d\u6587\u539f\u6587

移植到那个平台都不会变了。

再执行:native2ascii -reverse testunicode.properties test2.properties

可以看到test2.properties的内容为:

#This is a test
test=这是测试的中文原文

又还原为原来的编码了。

如果我们只有命令行打入命令native2ascii,这是系统会等你输入文字,然后在你按回车的时候以unicode回显,这种情况适合单个字符的转译。

native2ascii唯一不足的就是不能够对对整个目录进行统一编译,如果需要转译的文件比较多,得自己写一个循环文件了,总的来说已经不错了。

分享到:
评论

相关推荐

    native2ascii 命令的使用

    `native2ascii`命令是Java开发中用于处理非ASCII字符的一种工具,主要用于将含有非英文字符(如中文、日文等)...通过合理使用`native2ascii`,开发者可以轻松地管理包含非ASCII字符的资源,从而提升项目的国际化水平。

    android ndk环境下移植libiconv方法 附源码

    `android ndk libiconv库移植方法.pdf`文档应该提供了更详细的移植步骤和注意事项,包括如何处理特定平台的依赖、编译选项的调整以及可能出现的问题及解决方案。在实际操作过程中,可能还需要根据Android版本和目标...

    编写跨平台Java程序注意事项

    如果必须使用本地方法(Native Method)或本地代码,考虑使用服务器程序进行封装,或者利用 CORBA(Common Object Request Broker Architecture)来实现跨平台通信。 Java 中的 `java.lang.Runtime.exec` 方法可以...

    PyPI 官网下载 | ascii-canvas-1.2.1.tar.gz

    云原生架构强调可移植性、弹性和服务解耦,开发者可能在容器化应用中使用`ascii-canvas`来生成简单的状态指示器或调试信息。 **Zookeeper相关** 虽然`ascii-canvas`并未直接与Apache ZooKeeper集成,但两者在某些...

    基于高通平台汉字解决方案

    综上所述,基于高通平台的汉字解决方案,不仅填补了平台本身在汉字显示方面的空白,更通过创新的BMP文件存储结构和BREW显示接口的优化利用,实现了汉字显示的高效、直观与便捷,为用户提供更加丰富和流畅的使用体验...

    JAVA入门_精品21天学通JAVA

    此外,JDK还提供了一些其他实用工具,例如native2ascii用于处理字符编码的转换,javap可用来反编译Java类文件,jdb为Java调试工具,jps用于查看JVM进程信息,keytool用于生成和管理密钥库,而javadoc用于生成API文档...

    MiniGUI体系结构

    多字符集支持则确保了对不同语言和编码的兼容,例如ASCII、GBK、Unicode等。 图形抽象层和输入抽象层及Native Engine的实现(MiniGUI 体系结构之四 图形抽象层和输入抽象层及 Native Engine 的实现.htm)分为两部分...

    21天学通java教程

    - native2ascii命令用于将Unicode编码的字符转换成ASCII编码,或者将ASCII码转回Unicode编码。 - javap命令用于将.class文件反编译成Java字节码。 - jdb是一个Java调试工具。 - jps命令用于显示JVM进程信息。 - ...

    21天学通JAVA(高清版)

    此外,还包括了其他一些重要命令,如native2ascii用于转换字符编码,javap用于反编译class文件,jar用于创建JAR包,以及javadoc用于生成API文档。 在了解JDK命令后,读者还会接触到Java平台的目录结构。JDK安装目录...

    21天学通JAVA(高清版PDF)

    此外,Java还包含了一些工具命令,如native2ascii用于字符编码转换,javap用于反编译class文件,jdb用于Java程序调试,jps用于查看JVM进程信息,keytool用于管理keystore文件。这些工具和命令的使用是Java编程入门的...

    21天学通JAVA_入门精品

    - native2ascii 用于处理Unicode编码转换。 - javap 是Java类文件分析工具,可以反编译class文件。 - jdb 是Java的调试工具。 - jps 用于查看JVM进程信息。 - keytool 用于创建keystore文件。 - jar 用于打包...

    MiniGUI体系结构及开发指南

    - **具体实现**:对于不同的嵌入式平台,MiniGUI提供了相应的图形引擎和输入引擎实现,如针对EP7211等嵌入式系统的移植案例。 **4.2 Native图形引擎和输入引擎** - **图形引擎**:MiniGUI的图形引擎负责窗口的绘制...

    PyPI 官网下载 | bincopy-1.1.2.tar.gz

    3. **云原生应用开发**:“cloud native”强调的是应用的可移植性、弹性与自动化。`bincopy`能辅助开发者处理容器镜像、配置文件等二进制数据,确保云原生应用在不同云环境中的正确部署和运行。 4. **物联网(IoT)...

Global site tag (gtag.js) - Google Analytics