询问TCP / IP套接字程序 [英] asking TCP/IP socket program
问题描述
我测试一个简单的TCP / IP套接字程序。在服务器中,我使用C程序,在客户端,我使用java程序。当我将结果从服务器发送回客户端时,客户端无法读取数据。
服务器发送如下格式的数据,
发送(已连接,100,strlen(100) ,0);
客户端收到如下格式,
BufferedReader fromServer =
new BufferedReader(
new InputStreamReader(socket.getInputStream()));
String line = fromServer.readLine();
System.out.println(客户收到:+来自服务器的+);
请帮帮我。
I test a simple TCP/IP socket program . In server , i use C program and in client , i use java program. When i send back result from server to client , client can't read data .
server send data like the following format ,
send(connected, 100,strlen(100),0);
client receive like the following format,
BufferedReader fromServer =
new BufferedReader(
new InputStreamReader(socket.getInputStream()));
String line = fromServer.readLine();
System.out.println("Client received: " + line + " from Server");
pls help me.
推荐答案
你的发送功能看起来很奇怪。它有用吗?
我会写得更好
your send function looks strange. Does it work?
I would write it a little better
send(connected, "100",strlen("100"),0);
通常是以这种方式编写的代码
normally is such code written in that way
int cnt = 100;//or some dynamic value
char *buffer = new char[cnt];
memcpy( buffer, someSourceData, dataSize );//smaller than cnt
send(connected, buffer,dataSize,0);
这篇关于询问TCP / IP套接字程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!