Java判断中文及中文字符转unicode

1、java中判断字符是否为中文

/**
  * 判断是否为中文字符
  * @param c
  * @return
  */
public  boolean isChinese(char c) {
     Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
     if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
            || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
            || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
            || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
            || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
            || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
        return true;
    }
    return false;
}

2、Java中中文字符转unicode

/**
  * 把中文转成Unicode码
  * @param str
  * @return
  */
public String chinaToUnicode(String str){
     String result="";
     for (int i = 0; i < str.length(); i++){
          int chr1 = (char) str.charAt(i);
          if(chr1>=19968&&chr1<=171941){//汉字范围 \u4e00-\u9fa5 (中文)
              result+="\\u" + Integer.toHexString(chr1);
          }else{
              result+=str.charAt(i);
          }
     }
     return result;
}

知道了Java中中文字符在unicode字符集中的存储规则,也为后面Java中实现字母索引中文建立了基础。

原文:http://orgcent.com/java-check-chinese-unicode/

时间: 2024-11-05 23:33:22

Java判断中文及中文字符转unicode的相关文章

java判断数字或中文或字母

1.判断字符串是否仅为数字: 1>用JAVA自带的函数 public static boolean isNumeric(String str){   for (int i = str.length();--i>=0;){       if (!Character.isDigit(str.charAt(i))){     return false;    }   }   return true;  } 2>用正则表达式 public static boolean isNumeric(Str

Android java判断字符串包含某个字符段(或替换)

String str = "1234567"; if(str.indexOf("23") != -1) { System.out.println("包含该字符串"); }

Java 判断中文字符

Java判断一个字符串中是否有中文字符有两种方法,但是原理都一样,就是通过Unicode编码来判断,因为中文在Unicode中的编码区间为:0x4e00--0x9fa5 第一种: String chineseStr = "中华人民公社abc"; char[] charArray = chineseStr.toCharArray(); for(int i=0;i<charArray.length;i++){ if ((charArray[i] >= 0x4e00)&&

java 随机生成一个中文、判断某个string是否是中文以及打印出全部的中文

现在网上大多数用于判断中文字符的是 U+4E00..U+9FA5 这个范围是只是"中日韩统一表意文字"这个区间,但这不是全部,如果要全部包含,则还要他们的扩展集.部首.象形字.注间字母等等; 2E80-A4CF: 包含了中日朝部首补充.康熙部首.表意文字描述符.中日朝符号和标点.日文平假名.日文片假名.注音字母.谚文兼容字母.象形字注释标志.注音字母扩展.中日朝笔画.日文片假名语音扩展.带圈中日朝字母和月份.中日朝兼容.中日朝统一表意文字扩展A.易经六十四卦符号.中日韩统一表意文字.彝

java 判断含有中文的字符串的长度

public static boolean isLetter(char c) { int k = 0x80; return c / k == 0 ? true : false; } /** * 判断字符串是否为空 * @param str * @return */ public static boolean isNull(String str){ if(str==null||str.trim().equals("")||str.trim().equalsIgnoreCase("

判断字符串是中文或者英文

import java.util.regex.Matcher; import java.util.regex.Pattern; /** * * <p> * ClassName ShowChineseInUnicodeBlock * </p> * <p> * Description 提供判断字符串是中文或者是英文的一种思路 * </p> * * @author wangxu [email protected] * <p> * Date 2014-9

Java读properties文件中文乱码问题的解决方法

java读properties文件,包含中文字符的主要有两种: 1.key中包含中文字符的(value中也有可能包含) 2.key中不包含中文字符的(value中有可能包含) 1.key中包含中文字符 可以使用java自带工具native2ascii.exe(Java\jdk1.x.x\bin\native2ascii.exe),转换文件编码格式 示例: native2ascii -encoding 8859_1 c:\a.properties c:\b.properties 即将 c:\a.p

深入剖析Java编程中的中文问题及建议最优解决方法

摘录自:http://fafeng.blogbus.com/logs/3062998.html http://www.blogbus.com/fafeng-logs/3063006.html 深入剖析Java编程中的中文问题及建议最优解决方法 说明:本文为作者原创,作者联系地址为:[email protected].由于Java编程中的中文问题是一个老生常谈的问题,在阅读了许多关于Java中文问题解决方法之后,结合作者的编程实践,我发现过去谈的许多方法都不能清晰地说明问题及解决问题,尤其是跨平台

Java自学-I/O 中文问题

Java中的编码中文问题 步骤 1 : 编码概念 计算机存放数据只能存放数字,所有的字符都会被转换为不同的数字. 就像一个棋盘一样,不同的字,处于不同的位置,而不同的位置,有不同的数字编号. 有的棋盘很小,只能放数字和英文 有的大一点,还能放中文 有的"足够"大,能够放下世界人民所使用的所有文字和符号 如图所示,英文字符 A 能够放在所有的棋盘里,而且位置都差不多 中文字符, 中文字符 中 能够放在后两种棋盘里,并且位置不一样,而且在小的那个棋盘里,就放不下中文 步骤 2 : 常见编码