我花了两天时间尝试解决这个问题,但我不明白是什么问题。我在android上开发了简单的服务器应用。我发送请求到服务器应用程序(下面),我通过使用缓冲区数组读取传入的消息,然后我想将缓冲区数组转换为字符串并将其保存为txt文件。我的目标是我想在接收消息时做一些匹配的字符串。 但问题是我看到的字符如下:
“% ! zy *] { u3 gy + 2% Y 5ҟ ( (c $) | lCksmve“
private InputStream in;
try {
byte[] buff = new byte[LIMIT];
int got;
while ((got = in.read(buff)) > -1) {
String msg = new String(buff, 0, got);
saveToFile(msg);
}
} catch (Exception ignore) {
ignore.printStackTrace();
}
有人可以帮我解释一下为什么我会得到这些角色吗?顺便说说, 我也尝试使用解码,如:
String msg = new String(buff, 0, got, "UFT8");
但没有改变,我得到了相同的字符