我正在尝试通过蓝牙通信将整数发送到Android设备。我的问题是如何从inpustream中读取字符数组?
这是我的服务器代码Java的一部分:
try {
outStream = connection.openOutputStream();
int numbers = (int) (Math.random() * 10);
outStream.write(numbers);
System.out.println(numbers);
} catch (IOException e) {
e.printStackTrace();
}
目标是Android读取服务器发送的整数。我也尝试使用PrintWriter方法发送数据(randome数字),如下所示:
outStream = connection.openOutputStream();
pWriter = new PrintWriter(new OutputStreamWriter(outStream));
int numbers = (int) (Math.random() * 10);
pWriter.write(numbers);
System.out.println(numbers);
pWriter.flush();
pWriter.close();
如果使用此方法print.write,我知道这只发送单个charchters,所以我的问题是我如何向Android发送charchters数组?
这是Android代码的一部分:
public void run() {
int data = in.read(buffer);
while (true) {
try {
byte[] buffer = new byte[1024];
int data;
data = in.read(buffer);
data = in.read(buffer, 0, buffer.length);
} catch (IOException ex) {
Log.e(TAG_IOThread, "disconnected", ex);
break;
}
}
}
答案 0 :(得分:0)
确实是DataOutpustream,我使用了writeInt()方法,并且在服务器上我改为readInt();我认为可以使用OutputStream发送整数和InputStream来接收它。