java 中gbk汉字占两个字节,utf-8占3个字节
1、首先查询数据库字符集
select userenv('language') from dual;
如果显示SIMPLIFIED CHINESE_CHINA.ZHS16GBK,一个汉字占用两个字节;
如果显示SIMPLIFIED CHINESE_CHINA.AL32UTF8,一个汉字占用三个字节.
可以用以下语句查询一个汉字占用的字节长度
select lengthb('你') from dual;//返回2,表示2个字节
2、java 与之匹配
ZHS16GBK s.length()
AL32UTF8 s.getBytes(StandardCharsets.UTF_8).length