※ 引述《XDXQQ (杰洛尼莫)》之铭言:
: 大家好
: 请问String要如何以Byte分割?
: 举例来说
: String a="ABC安";
: 想要将a以2byte来分割
: 可是当尾巴刚好遇到中文字时
: 若无法分割,则换下一个字串
: 结果就会变成a[0]="AB",a[1]="C",a[2]="安" 这样
: 请问有办法办到吗?
# 确定转byte array的编码,以UTF-8为例:
byte[] b = s.getBytes("UTF-8");
# 检查byte0确定为几byte的字:
来源:https://en.wikipedia.org/wiki/UTF-8 1993年版
private int utf8Byte0(byte b) {
if(((b >> 7) & 1) == 0) {
return 1;
} else {
StringBuilder sb = new StringBuilder();
for(int i = 7; i >= 1;