如果只是为了页面的显示,用GBK 在页面显示,ISO-8859-1 存在数据库就够了,但如果想最终解决它,要用Unicode才行,本人的一个项目由于要用java ,c++,linux,简体,繁体,英文 协作才能完成,但只是在页面显示正确是不能很好的协同工作,只有用unicode 才能根本解决
java 代码如下:
package com.c.elmer.util.string;
public class PropertiesTranslater {
public static void main(String[] args) {
System.out.println("g2u:"+new PropertiesTranslater().GBK2Unicode("简繁 测试"));
System.out.println("u2g:"+new PropertiesTranslater().Unicode2GBK("\\u4e2d\\u570basdf\\u4eba\\u5730\\u53d1,\\u4e8e\\u593a\\u7395\\u5730"));
}
/**
* 中文转unicode
* @param str
*
* @return 反回unicode编码
*/
public static String GBK2Unicode(String str) {
StringBuffer result = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
char chr1 = (char) str.charAt(i);
if (!PropertiesTranslater.isNeedConvert(chr1)) {
result.append(chr1);
continue;
}
result.append("\\u" + Integer.toHexString((int) chr1));
}
return result.toString();
}
/**
*
* unicode转中文
* @param str
*
* @return 中文
*
*/
public static String Unicode2GBK(String dataStr) {
int index = 0;
StringBuffer buffer = new StringBuffer();
while (index < dataStr.length()) {
if (!"\\u".equals(dataStr.substring(index, index + 2))) {
buffer.append(dataStr.charAt(index));
index++;
continue;
}
String charStr = "";
charStr = dataStr.substring(index + 2, index + 6);
char letter = (char) Integer.parseInt(charStr, 16);
buffer.append(letter);
index += 6;
}
return buffer.toString();
}
public static boolean isNeedConvert(char para) {
return ((para & (0x00FF)) != para);
}
}
分享到:
相关推荐
java乱码自己解决的办法
Java乱码问题解决方法,java乱码怎么解决,java项目乱码,java乱码处理,
java乱码解决方案,在使用eclipse时出现的乱码问题,帮助解决
解决java web开发中遇到的前后台传值乱码问题。
utf8解决JSP中文乱码问题 Tomcat 5.5中文乱码 JDBC ODBC Bridge的Bug及其解决方法 Solaris下Servlet编程的中文问题及解决办法
在Java编程中,经常会碰到汉字的处理及显示问题,以不小心就会产生一大堆乱码或者问号。造成这种问题的根本原因是Java中默认的编码方式是Unicode,而中国人通常使用的文件和DB都是基于GB2312或BIG5等编码,故会出现...
java中文乱码解决问题
解决JAVA编程中遇到的各种乱码问题,对乱码问题的分析
乱码解决 乱码解决 乱码解决 乱码解决 乱码解决 乱码解决 乱码解决
主要为大家分享了介绍了java中文乱码之解决URL中文乱码问题的方法,感兴趣的小伙伴们可以参考一下
java解决中文乱码问题
JAVA 乱码问题,JAVA 乱码问题,JAVA 乱码问题JAVA 乱码问题JAVA 乱码问题JAVA 乱码问题
JAVA常见中文乱码问题解决方法,JAVA常见中文乱码问题解决方法.
java中文乱码的解决方法详细文档吐血放送。
Java开发乱码问题解决方法: 以下是个人知道的方法汇总
开发中前台页面向后台传参,汉字乱码,看了好多网上的方法都解决不了,所以写了一个工具类,判断是乱码就转换,不乱码就不乱换,汉字字母符号自动判断。最后完美解决汉字乱码问题。
java编程中乱码问题解决方案,解决一些常见的java开发环境中的乱码问题
阅读许多关于中文乱码的解决办法的博文后,发现对于该问题我们都(更加包括我自己)没有一个清晰明了的认识,于是LZ想通过这系列博文(估计只有几篇)来彻底分析、解决java中文乱码问题,如有错误之处望各位同仁指出...
JAVA反编译文件解决中文乱码问题