05-16 14:29:16.935: W/System.err(20981): java.lang.NumberFormatException:
unable to parse '��������������������' as integer
这几乎是我的 Android 应用程序在它应该接收 10 字节长的字符串时显示的错误消息(在错误消息中显示为 20 个不同的字节。
BufferedReader in = new BufferedReader(
new InputStreamReader(client.getInputStream(), "UTF-8"));
BufferedWriter out = new BufferedWriter(
new OutputStreamWriter(socket.getOutputStream(), "UTF-8"));
^^ 我添加了 UTF-8。
String count = String.format("%10s",
(new Integer(result.length())).toString()).replace(" ", "0");
这就是我获取我发送的字符串的方式,它工作正常,因为它在 PC 端日志上正确显示。
但是,在 Android 端,它没有被正确接收。
BufferedReader in = new BufferedReader(
new InputStreamReader(client.getInputStream(), "UTF-8"));
CharBuffer buf = CharBuffer.allocate(1024*1024);
in.read(buf);
char[] buffer = new char[10];
buf.get(buffer, 0, 10);
cont = Integer.parseInt(new String(buffer));
这就是我获取字符串的方式,它似乎无法正常工作。有更多经验的人可以帮助我理解为什么这不起作用吗?