将Windows下编写的JAVA程序移植到Linux下的编码解决
2009-06-08 14:31
381 查看
需要将Windows的报文服务(MessageServer)程序移植到Linux下,其中涉及到编码的问题,在Windows下正常的中文,到Linux下、以及Linux的Eclipse打开就全成了乱码了,当然这可是不是我们所想要的结果,程序的提示还是得保证中文,这样才能够明白。
我使用的Linux为RedFlag6.0,感觉挺好用的,安装软件之类可以不需要记那些命令了,类似于Windows一样,在文件上面点击右键,可以解压缩及压缩、安装等操作了,并且有一些环境变量它他还自动设置好,如安装JDK的时候,会设置PATH,但是CLASSPATH就得自己设置了。
解决乱码分两种,一种是解决在Linux下,采用其内置查看器查看的时候,要能够正确显示中文,这里就需要设置其默认编码,我在本机的ECLIPSE默认的编码为GBK,在LINUX下,用其自带的编码器查看就不正确,显示乱码,这说明RG6中的默认编码不为GBK,默认的应该是UTF-8,这里就要设置其默认编码为GBK,这里可以在两个地方设置环境变量,一个是".bash_profile"(注:此在root的根目录下,通常是隐藏的,在命令模式下可以编码,如打入命令:"vi .bash_profile",该文件bash_profile是每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。相当于WINDOWS中的用户环境变量一样);另外一个是".profile",在/etc下,相当于WINDOWS中的系统变量存放处,所以这里我们设置任意一个地方都可以的。这里例出修改"/root/.bash_profile":
1.vi .bash_profile(/root下 ),进入vi编辑器后,按i进入插入模式即可编辑
2、在最后加上如下几句,表示设置一些默认编码为GBK:
export LC_ALL=zh_CN.GBK
export LC_CTYPE=zh_CN.GBK
export LANG=zh_CN.GBK
3、保存该文件。先按ecs,再输入":wq!",因为".bash_profile"为只读的,最后加"!"表示强制执行
4、要使配置生效,退出vi后,再输入命令". .bash_profile",命令的读法为"点空格点bash_profile",再次双击到JAVA文件中上,即可正常显示中文了,不过前提是在WINDOWS下的ECLIPSE的默认编码为GBK,其它编码类似。
注:以上步骤摘自:http://www.javaeye.com/topic/390420
以上只是解决了可以在LINUX中双击查看不会出现乱码,但是在ECLIPSE中查看还是乱码,可以通过
“window->preferences...>workspace”的右中部有显示编码的部份,查以查看到其默认编码为UTF-8,但是我们点下面的OTHER下拉框却没有GBK,最后发觉原来那个框是可以输入的,输入GBK,点确定,中文显示正常,搞定。
本文出自:冯立彬的博客
我使用的Linux为RedFlag6.0,感觉挺好用的,安装软件之类可以不需要记那些命令了,类似于Windows一样,在文件上面点击右键,可以解压缩及压缩、安装等操作了,并且有一些环境变量它他还自动设置好,如安装JDK的时候,会设置PATH,但是CLASSPATH就得自己设置了。
解决乱码分两种,一种是解决在Linux下,采用其内置查看器查看的时候,要能够正确显示中文,这里就需要设置其默认编码,我在本机的ECLIPSE默认的编码为GBK,在LINUX下,用其自带的编码器查看就不正确,显示乱码,这说明RG6中的默认编码不为GBK,默认的应该是UTF-8,这里就要设置其默认编码为GBK,这里可以在两个地方设置环境变量,一个是".bash_profile"(注:此在root的根目录下,通常是隐藏的,在命令模式下可以编码,如打入命令:"vi .bash_profile",该文件bash_profile是每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。相当于WINDOWS中的用户环境变量一样);另外一个是".profile",在/etc下,相当于WINDOWS中的系统变量存放处,所以这里我们设置任意一个地方都可以的。这里例出修改"/root/.bash_profile":
1.vi .bash_profile(/root下 ),进入vi编辑器后,按i进入插入模式即可编辑
2、在最后加上如下几句,表示设置一些默认编码为GBK:
export LC_ALL=zh_CN.GBK
export LC_CTYPE=zh_CN.GBK
export LANG=zh_CN.GBK
3、保存该文件。先按ecs,再输入":wq!",因为".bash_profile"为只读的,最后加"!"表示强制执行
4、要使配置生效,退出vi后,再输入命令". .bash_profile",命令的读法为"点空格点bash_profile",再次双击到JAVA文件中上,即可正常显示中文了,不过前提是在WINDOWS下的ECLIPSE的默认编码为GBK,其它编码类似。
注:以上步骤摘自:http://www.javaeye.com/topic/390420
以上只是解决了可以在LINUX中双击查看不会出现乱码,但是在ECLIPSE中查看还是乱码,可以通过
“window->preferences...>workspace”的右中部有显示编码的部份,查以查看到其默认编码为UTF-8,但是我们点下面的OTHER下拉框却没有GBK,最后发觉原来那个框是可以输入的,输入GBK,点确定,中文显示正常,搞定。
本文出自:冯立彬的博客
相关文章推荐
- java linux和windows下文件路径间隔符的写法——解决linux下程序在windows下运行时的上传文件出错问题
- 【Linux菜鸟成长记(十)】解决Windows的Java程序在ubuntu Eclipse下显示中文乱码
- 〖Windows〗Linux的Qt程序源码转换至Windows平台运行,编码的解决
- Windows下C++程序移植到Linux上的几个问题及解决方法
- linux下QT程序与windows程序中文字符串传输编码问题的一点解决,utf8转gbk
- 【原创】记一个Java GUI程序(原目标OS是Windows)“移植”到Linux的过程
- 如何将Linux端POSIX标准的程序移植到windows端 (一)
- eclipse中编写Java程序出现Resource leak: 'input' is never closed解决方法
- linux/windows下定时执行java程序
- Linux下修改默认字符集--->解决Linux下Java程序种中文文件夹file.isDirectory()判断失败的问题
- Linux下使用vi 编写一个c程序和java程序
- Socket相关程序:从Windows移植到Linux
- 用notepad++书写java,编译java程序是出现:错误: 编码GBK的不可映射字符问题的解决
- Java——调用Linux和Windows下命令行执行程序
- Eclipse、Windows、Linux解决Java内存泄露问题java.lang.OutOfMemoryError
- 解决Windows记事本打开Linux程序注释乱码排版混乱的问题
- 在Linux中#!/usr/bin/python之后把后面的代码当成程序来执行。 但是在windows中用IDLE编程的话#后面的都是注释,之后的代码都被当成文本了。 该怎么样才能解决这个问题呢?
- Linux程序代码移植到Windows的简单方法[转摘]
- fortran77格式程序从windows下移植linux下遇到的两个问题
- windows c++ 程序移植到Linux的一些要点