国际码和内码的转换在线「最新区位码转国标码工具」

今天朱瀚给大家带来了这篇国际码和内码的转换在线,区位码转国标码工具干货,以及关于汉字,内码,字符这些的相关干货,既然来了就别走了,好好的静下心把这篇文章阅读完相信你会有一定的收获哦!

我先考一考你,你说这个字符串(ab一2?仯3?4)有多少个字符?

这时候你也许开始数了,123…9个,没错,确实我们肉眼确实是看到了9个,java代码如下:

汉字,中文,内码互转,unicode编码转换,汉字机内码转换

有没有发现java判断出来的不是9,而是12!!!

那是因为这个字符串中有2个字符ab一2?仯3?4用黄色表示,实际上UTF-8已经满足不了,? 见下图:

汉字,中文,内码互转,unicode编码转换,汉字机内码转换

java的String是使用UTF-16来表示的,U+0000-U+FFFF都ok,但是只要是下列这个区间的字符都无法用常规手段处理,5位内码的,用length都无法正确判断其长度

CJK Unified Ideographs Extension B (U+20000 through U+2A6DD)
CJK Unified Ideographs Extension C (U+2A700 through U+2B734)
CJK Unified Ideographs Extension D (U+2B740 through U+2B81D)
CJK Unified Ideographs Extension E (U+2B820 through U+2CEA1)
CJK Unified Ideographs Extension F (U+2CEB0 through U+2EBE0)

具体也可以查看官方资料 ,了解unicode,UTF-8,UTF-16,UTF-32的区别。

如下图,可以通过Character中的codePointCount来得到字符数量。

汉字,中文,内码互转,unicode编码转换,汉字机内码转换

进入主题

jdk自带的Character类特别好用,汉字转内码,内码转汉字具体功能请参考下面的代码

/**
 * 字符串转16进制内码
 * @param str ab一2?仯3?4
 * @return \u61\u62\u4e00\u32\u2b802\u4eef\u33\u2b82f\u34\u34
 */
public static String stringToCodePoints(String str) {
    StringBuilder stringBuilder = new StringBuilder();
    str.codePoints().forEach(cp -> stringBuilder.append("\u").append(Integer.toHexString(cp)));
    return stringBuilder.toString();
}

/**
 * 内码转汉字
 * @param codePoints \u61\u62\u4e00\u32\u2b802\u4eef\u33\u2b82f\u34\u34
 * @return ab一2?仯3?4
 */
public static String codePointsToString(String codePoints) {
    StringBuilder stringBuilder = new StringBuilder();
    for(String hexCodePoint : codePoints.split("\\u")){
        if(StringUtils.isNotBlank(hexCodePoint)) {
            stringBuilder.append(codePointToString(Integer.parseInt(hexCodePoint, 16)));
        }
    }
    return stringBuilder.toString();
}

/**
 * 十进制转汉字
 * @param cp code point 汉字内码
 * @return
 */
public static String codePointToString(int cp) {
    StringBuilder sb = new StringBuilder();
    if (Character.isBmpCodePoint(cp)) {
        sb.append((char) cp);
    } else if (Character.isValidCodePoint(cp)) {
        sb.append(Character.highSurrogate(cp));
        sb.append(Character.lowSurrogate(cp));
    } else {
        sb.append('?');
    }
    return sb.toString();
}

支持5位编码的在线转换工具

好了,今天就说到这里了,希望对你有帮助,国际码和内码的转换在线「最新区位码转国标码工具」这篇文章让你学习到一些知识的话,那就帮忙分享给你朋友吧!

本文发布者:万事通,不代表寂寞网立场,转载请注明出处:https://www.jimowang.com/p/27176.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 jimowangmail@126.com 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年1月4日 09:17
下一篇 2023年1月4日 09:19

相关推荐

  • 下一轮油价调整日期和走势预测 实用:下一轮油价调整是涨还是跌

    很高兴又见面了,这次朱家熙要和大家聊聊下一轮油价调整日期和走势预测,下一轮油价调整是涨还是跌这个话题,以及油价,日期,美元,柴油,跌幅相关的实用干货和最新资讯分享,阅读这篇文章之后,我相信你会更加深入地理解这个领域的基础知识。 油价在到了一定的时间点就会进行调整,有很多人都很关心今年的油价调整,那么下一轮油价调整日期和走势预测是怎么样的呢?下一轮油价调整是涨…

    2023年3月26日
  • 西安大唐不夜城旅游多少钱「必看:使用旅游攻略」

    大家好,很高兴又和你见面了,感谢你能经常过来支持杨淑娟,这次我们就来聊聊西安大唐不夜城旅游多少钱,使用旅游攻略,还有关于不夜城,广场,盛世等等各种相关干货,这些其实都是一些必备知识,只是有些时候我们没有遇到就没有去了解而已! 大唐不夜城位于陕西省西安市雁塔区的大雁塔旁,北起大雁塔南广场,南至唐城墙遗址,东起慈恩东路,西至慈恩西路,以唐风元素为主线,建有大雁塔…

    2022年12月27日 自媒体
  • jennie香奈儿套装「推荐jennie穿过的香奈儿」

    大家好,今天韩琳精心为你准备了干货jennie香奈儿套装,jennie穿过的香奈儿,还有套装,饰品,袜子,品牌,发型等各种干货文章,精心为你准备的干货,通过这篇文章相信你能有所收货! 韩国带货王BLACKPINK的Jennie复出以后,因为酷似《神雕侠侣》杨过的发型,讨论极大,并且引起全网狂欢。 并且引起了超凡联想,这个很像是某个动画角色: 笑就笑过了,不过…

    2023年3月22日 自媒体
  • 网关ip和本机ip的区别「最新2者间的不同处及更改IP方法」

    美好的1天将要从这里开始啦!今天笔者赵浩淼来说说网关ip和本机ip的区别,2者间的不同处及更改IP方法,以及地址,路由器,桌面等等各种一系列的相关干货,这篇文章对新手朋友来说是比较重要的,因为涉及到各个方面,阅读完你一定能有所收获! 路由器如何设置另外讨论,现只讲电脑的设置。在Windows XP下: 1、确定桌面上有没有”网上邻居”图标,如果没有,在桌面空…

    2022年12月3日
  • 延迟退休是2025开始吗 附:延迟退休有缓冲期吗

    小伙伴们你们好,今天卫海芬要和大家一起探讨一下延迟退休是2025开始吗,延迟退休有缓冲期吗的重要性,还有关于群体,政策,创意,人影,年间等一系列实用干货和最新资讯分享,如果你想要在这个领域中有所成就,那么你需要先从基础开始学习。 延迟退休可以说是提了几年的,毕竟现在人口老龄化的问题越加的严重,这不近期据十四五规划要求,国家就明确提到要实施渐进式延迟法定退休年…

    2023年5月24日
  • 梭子蟹清蒸好吃还是红烧好吃「必看:梭子蟹清蒸好吃还是香辣好吃」

    很高兴又和小伙伴们见面了,这次钱柃羽主要整理了一些关于梭子蟹清蒸好吃还是红烧好吃,梭子蟹清蒸好吃还是香辣好吃的事情,还有关于梭子蟹,螃蟹,红烧,口味,组胺这些的精品干货文章,想要做好首先一定要把基本功练好了,否者是很难持续提升的。 梭子蟹是生活中很常见的一种螃蟹,它的吃法比较多,可以清蒸,可以红烧,还可以香辣等,做出来的味道和口感都是不一样的,口味淡的人喜欢…

    2023年2月18日