当前位置:  技术问答>java相关

这里有一段将本地字符变为unicode的方法,但我有几点不明请指点一下!

    来源: 互联网  发布时间:2015-05-26

    本文导语:  请简要介绍一下转换的原理。   pubilc String native2unicode(String s){     if(s == null|| s.length() ==0){       return null;     }          try{       byte[] buffer = new byte[s.length()*2];       int j=0;       for(in...

请简要介绍一下转换的原理。
  pubilc String native2unicode(String s){
    if(s == null|| s.length() ==0){
      return null;
    }
    
    try{
      byte[] buffer = new byte[s.length()*2];
      int j=0;
      for(int i=0;i= 0x100){  //???0x100这句话是什么意思?
          char c = s.charAt(i);
          byte[] buff  = (""+c).getBytes();
          buffer[j++]=(byte)buf[0];//
          buffer[j++]=(byte)buf[1];//还有这两句有什么作用呢?
          
        }else{
          buffer[j++] = (byte)s.charAt(i);
        }
      }
      
      return new String(buffer,0,j);
    }catch(Exception er1){
      byte[] b=s.getBytes();
      try{
        return(new String(b,"gb2312"));
      }catch(UnsupportedEncodingException err){
        return null;
      }
    }
  }

|
byte[] buffer = new byte[s.length()*2];
每个字符编码时占用2个字节,因此buffer的大小为字符串长度的两倍。

if(s.charAt(i) >= 0x100){  //???0x100这句话是什么意思?

如果字符对应的16进制数为>=0x100,表示高位字节不为零,则将此字符拆为字节数组,合并到buffer中;

如果字符对应的16进制数为

    
 
 

您可能感兴趣的文章:

  • 在unix下编程,把一个日期类型的变量变为字符串型的,用什么函数?
  • 如何将一个字符串变为图片
  • jsp存入数据库中文字符变为乱码,怎么处理?谢先了!
  • jquery如何把数组变为字符串传到服务端并处理
  • 如何将数字变为字符串格式化输出?
  • 求高手指点shell字符串变量赋值问题!
  • redhat9.0启动到输入用户名(字符方式)时系统马上自动休眠,高人指点!!100分
  • 我想在unix写一个模仿informix或者windowns里那样的菜单,当然,是字符界面的哈,不知哪里有这方面的源代码,请大侠给予指点。
  • LINUX7。3默认字符集下的数据在LINUX9不可见,望指点!
  • Linux字符驱动的一个问题?刚学,请高手指点下原因
  • 在c++中,是否用方法可以将使用cout输出到屏幕上的字符给清除掉?请高手指点(高分求助)
  • linux简单字符设备驱动的一点疑问,麻烦前辈进来指点一二!
  • 非常着急,关于DES加密的,用java加密过的字符串,药用Linux下的C语言来解密,涉及到补位的问题,弄了几天都没有实现,有高手会的,请指点一二!!!!!!!!
  • 字符串处理中的“Segmentation fault”错误,困惑中,请高手指点迷津!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Strings(字符串) 成员 size():返回字符串中字符的数量
  • 关于字符串的操作,我想得到字符串的长度,和他开始两位组成的新的字符串,例如::
  • C++ Strings(字符串) 成员 c_str():将字符串以C字符数组的形式返回
  • 请问怎样判断一个字符是中文字符还是英文字符?(空)
  • C++ Strings(字符串) 成员 find():在字符串中查找字符
  • C语言实现输入一个字符串后打印出该字符串中字符的所有排列
  • C++ Strings(字符串) 成员 end():返回一个迭代器,指向字符串的末尾。(最后一个字符的下一个位置)
  • 用Java正则去掉字符串中重复出现的字符
  • C++ I/O 成员 ignore():读取字符并忽略指定字符
  • 字符字符串加法问题?
  • C++ Strings(字符串) 成员 copy():将内容复制为一个字符数组
  • 怎样去掉字符串中的tab字符?
  • C++ Strings(字符串) 成员 rbegin():返回一个逆向迭代器,指向最后一个字符
  • 如何使GDB显示完整的字符串变量,当字符串比较长时。
  • C++ Strings(字符串) 成员 empty():如果字符串为空,返回真
  • 如何将一个双引号”放在一个字符串中,就是在字符串中如何转义一个双引号。谢谢!
  • C++ Strings(字符串) 成员 begin():返回一个迭代器,指向第一个字符
  • php判断字符串在另一个字符串位置的方法
  • C++ Strings(字符串) 成员 data():返回内容的字符数组形式
  • 请教,有关16进制字符串形成2进制字符串的问题!
  • C++ Strings(字符串) 成员 length():返回字符串的长度
  • crtl+alt+F1一直到F6都可以从图形到字符,那么,这和纯粹的字符界面有什么区别,也就是该/etc/initab的值为3后进入的字符界面?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3