Unicode编码与中文互转

直接贴上一个我写的小程序实例,包含了两个方法,能够实现中文与Unicode编码的转换

 

  package com.Demo;

  import java.util.Scanner;

  public class Demo04 {

  public static void main(String args[]){

    Scanner sc=new Scanner(System.in);
    //测试中文转Unicode
    System.out.print("请输入您的姓名:");
    String Name=sc.next();
    System.out.println("您的姓名转换为Unicode编码为:"+strToUnicode(Name));

    //测试Unicode转中文
    System.out.print("请输入Unicode编码:");
    String unicode=sc.next();
    System.out.println("您的Unicode编码转换为中文:"+unicodeToString(unicode));
  }

 

  /**
  * 中文字符串转换为Java代码
  * @param str
  * @return
  */
  public static String strToUnicode(String str){
    StringBuffer unicode=new StringBuffer();
    for(int i=0;i<str.length();i++){
      //取出每一个字符
      char c=str.charAt(i);
      //转换为unicode
      unicode.append("\\u"+Integer.toHexString(c));
    }
    return unicode.toString();
  }

 

  /**
  * unicode编码转换成中文方法
  * @param unicode
  * @return
  */
  public static String unicodeToString(String unicode){
    StringBuffer str=new StringBuffer();
    String[] hex=unicode.split("\\\\u");
    for(int i=1;i<hex.length;i++){

    //转换出每一个代码点
    int data=Integer.parseInt(hex[i],16);

    //追加成String
    str.append((char)data);
    }
    return str.toString();
  }
 }

posted @ 2016-02-17 11:11  猫儿36  阅读(859)  评论(0编辑  收藏  举报