修复Utility.encodeUTF8Length的bug
This commit is contained in:
@@ -1924,7 +1924,15 @@ public final class Utility {
|
|||||||
final int limit = start + len;
|
final int limit = start + len;
|
||||||
for (int i = start; i < limit; i++) {
|
for (int i = start; i < limit; i++) {
|
||||||
c = chars[i];
|
c = chars[i];
|
||||||
size += (c < 0x80 ? 1 : (c < 0x800 ? 2 : 3));
|
if (c < 0x80) {
|
||||||
|
size++;
|
||||||
|
} else if (c < 0x800) {
|
||||||
|
size += 2;
|
||||||
|
} else if (Character.isSurrogate(c)) {
|
||||||
|
size += 2;
|
||||||
|
} else {
|
||||||
|
size += 3;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user