对于Unicode字符,例如此无中断空格] [ASCII代码160,通过在小键盘中按住Alt键和键入160生成),它产生两个字符的长度。 / p>
例如,我有88个字符的字段(例如Android日志中的Tag字段)。如果我有87个普通字符(ASCII <127)和一个不间断空格,在String.length()
中我仍然会得到88.但实际上它需要89的长度。它超过字段大小。
Java(或Android)中是否有函数只返回字符串的“扩展”长度?
答案 0 :(得分:1)
您对Java角色的心理模型感到困惑。该字符串有88个字符,当作为UTF-8序列写出时需要89 字节。显然,您需要使用哪个版本取决于您想要使用的版本。如果您要使用网络链接发送数据,则需要使用八位字节(字节)。