Android Java字符串操作不起作用
我的问题是,所有字符串操作似乎都不起作用:
String received_message = new String(lmessage, 0, packet.getLength());
注意:收到的信息是“开始。你好。结束”
if (received_message.startsWith("start.") && received_message.endsWith(".end"))
{
result = 1;
}
received_message = received_message.replace("start.", "");
received_message = received_message.replace(".end", "");
结果:
结果为0,收到的_消息仍然是“start.hello.end”
--
但这是正确的:
if (received_message.startsWith("s") && received_message.endsWith("d"))
{
result = 1;
}
received_message = received_message.replace("s", "");
received_message = received_message.replace(".", "");
如果我用一个字符来实现这个函数,它就可以工作了
我怎样才能让它对整个字符串起作用
# 1 楼答案
问题在于编码。Windows服务器使用Unicode,Android系统使用UTF-16作为标准。因此字符串包含一些不可见的字符