您当前的位置: 首页 >  Java

liaowenxiong

暂无认证

  • 3浏览

    0关注

    1171博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Java中如何获取字符串的Unicode编码

liaowenxiong 发布时间:2021-08-24 22:53:42 ,浏览量:3

public class UnicodeUtils {
    public static void main(String[] args) {
        String s = "我爱你s";
        System.out.println(getUnicode(s)); // \u6211\u7231\u4f60\u0073
    }

    /**
   * 获取字符串的Unicode,即将字符串转化成Unicode
   * @param str
   * @return String 
   * @throws 
   * @author liaowenxiong
   * @date 2022/12/17 15:57
   */
  public static String getUnicode(String str) {
    String unicode = "";
    if (str != null) {
      for (char c : str.toCharArray()) {
        if (c > 255) {
          unicode += "\\u" + Integer.toHexString((int) c);
        } else {
          unicode += "\\u00" + Integer.toHexString((int) c);
        }
      }
    }
    return unicode;
  }
}

注:Unicode 编码,是用 2 个字节要表示一个字符,而小于等于 255 的字符都是欧美的字符,1 个字节就可以表示了,它们的范围是 00000000~11111111,可以表示 256 个字符。Integer.toHexString(c),如果 c 的编码(其实就是在 Unicode 字符集中的码位)小于 255,那么返回的十六进制数就只要两位(十六进制的两位对应二进制的八位,就是一个字节),所以前面补两个 0,让显示的长度保持一致

关注
打赏
1661566967
查看更多评论
立即登录/注册

微信扫码登录

0.0496s