首页 > 作文

国际码和内码的转换在线(区位码转国标码工具)

更新时间:2023-04-05 14:13:19 阅读: 评论:0

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

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

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

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

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

cjk unified ideographs extension b (u+20000 through u+2a6dd)
cjk unified ideographs extenwow无法登陆sion 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来得到字符数量。

进入主题

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(integ甜言密语er.parint(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);    } el if (character.isvalidcodepoint(cp)) {        sb.append(character.h无锡大学ighsurrogate(cp));        sb.append(character.lowsurrogate(cp));    } el {        sb.append('?');    }    return sb.tostring();}
花旗参和西洋参的区别

支持国家法定婚假多少天5位编码的在线转换工具

本文发布于:2023-04-05 14:13:18,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/c5e9252e38409982630beee99d94a576.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:国际码和内码的转换在线(区位码转国标码工具).doc

本文 PDF 下载地址:国际码和内码的转换在线(区位码转国标码工具).pdf

标签:内码   汉字   字符   字符串
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图