私はcでサーバープログラムを書いています.クライアントはJava言語を使用するAndroidプラットフォーム上にあります.今、サーバーからクライアントにchar配列を送信するのに問題があります。つまり、クライアントはデータを取得できますが、デコードできません.それはおそらく、データ型の問題またはエンコードの違いによるものだと思います。誰かアイデアを教えてください。どうもありがとう!
サーバー側の私のコードは次のとおりです。
char buf[MAXSIZE];
memset(buf, 0, MAXSIZE);
int n_write;
strcpy(buf, "0008200050005001");
n_write = Write(confd, buf, strlen(buf));
if (n_write <= 0)
{
fputs("Write error in send_matrix_and_position\n", stderr);
close(confd);
return -1;
}
そして、ここにJavaコードがあります:
mSocket = new Socket(HOST, PORT);
mIn = mSocket.getInputStream();
mOut = mSocket.getOutputStream();
byte[] lengthByte = new byte[4];
mIn.read(lengthByte);
for(byte b : lengthByte)
{
System.out.println(b + "");
}