JAVA 中实现整句汉字拆分、转换为ASCII实例详解

JAVA 中实现整句汉字拆分、转换为ASCII实例详解

大家都知道,一个汉字等于两个byte的大小。二进制数据通过网络传输时,如果两个byte都超过128则会合并成一个Unicode(汉字)字符,本文的代码主要实现的功能是:把这些汉字拆分为byte,然后重新变为ASCII类型的字符串。

public static String ChineseToASCII(byte[] rec) { //从字节读取内容
   ByteArrayInputStream bais = new ByteArrayInputStream(rec);
   DataInputStream dis = new DataInputStream(bais);
   String BTS=null;
   try {
   BTS=new String(rec,"ISO8859-1");//转换编码
   bais.close();
   dis.close();
   } catch (Exception e) {
   e.printStackTrace();
   }
   return BTS;
 }
  /**
   * @param args the command line arguments
   */
  public static void main(String[] args) {
    String source="一二三四五六七八九十";
    System.out.println(source.length());
    String target=ChineseToASCII(source.getBytes());
    System.out.println(target);
    System.out.println(target.length());
  }

结果是:

compile:
run:
10
???????????ù??°????? ASCII字符如果超过128,则会显示为?,但是其本身的值不变
20
BUILD SUCCESSFUL (total time: 1 second)

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。