求教~哪位大虾能给我一个java 做客户端 ,c 语言写服务器端的例子吗?udp 或 tcp都 行~~~ 试了几个例子,c和java的代码都没问题,但是就是connect refused,哪位大虾 来指点一下.如果能给个例子就更好了.不胜感激~~~~~~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 //connect refused可能是ip或端口问题, 你可以把代码贴出来看看 代码是这样的,因为是在linux下的c部分:main(){ int skfd; char buf[128]; int len; struct sockaddr_in kpeer; memset(&kpeer, 0, sizeof(kpeer)); kpeer.sin_family = AF_INET; kpeer.sin_addr.s_addr=INADDR_ANY; kpeer.sin_port=8848; skfd=socket(PF_INET,SOCK_DGRAM,0); if(skfd<0){printf("socket create failed\n");exit(1);}if(bind(skfd,(struct sockaddr *)&kpeer,sizeof(kpeer))<0)printf("1\n");while(1){len=sizeof(kpeer);if(recvfrom(skfd,buf,sizeof(buf),0,(struct sockaddr *)&kpeer,&len)<0)printf("2\n");elseprintf("%s\n",buf);}}java 部分:import java.io.*;import java.net.*;class Sender2{public static void main (String [] args){String host = "192.168.1.100";if (args.length == 1)host = args [0];DatagramSocket s = null;try{s = new DatagramSocket ();byte [] buffer;buffer = new String ("Send me a datagram").getBytes ();InetAddress ia = InetAddress.getByName (host);DatagramPacket dgp = new DatagramPacket (buffer,buffer.length,ia,8848);}catch (IOException e){System.out.println (e.toString ());}finally{if (s != null)s.close ();}}} java 里少写了一句,在DatagramPacket dgp = new DatagramPacket (buffer,buffer.length,ia,8848);下面还有一句s.send (dgp);不知道哪儿有问题~~~~~~ java端没问题, c端有个小问题,你试试kpeer.sin_port=htons(8848); 把字符串转换成整型 跪求大侠,java静态问题 谁能做出这个题? 水晶报表问题, 关于KeyListener接口的问题 TOMCAT运行错误,虽不影响程序运行,但日志文件中报错,盼高手 对了,double类型如何比较?:) 急!!!100分求两个完整的APPLET源码!晚上来给分! 在一个Panel放一个图 Java SE的IO小问题 在做一个类似输入法的程序,有点问题咨询! 刚学JAVA新手问题-动态数组-文件读写-文件排序
可能是ip或端口问题, 你可以把代码贴出来看看
c部分:
main()
{
int skfd;
char buf[128];
int len;
struct sockaddr_in kpeer;
memset(&kpeer, 0, sizeof(kpeer));
kpeer.sin_family = AF_INET;
kpeer.sin_addr.s_addr=INADDR_ANY;
kpeer.sin_port=8848;
skfd=socket(PF_INET,SOCK_DGRAM,0);
if(skfd<0)
{
printf("socket create failed\n");
exit(1);
}
if(bind(skfd,(struct sockaddr *)&kpeer,sizeof(kpeer))<0)
printf("1\n");
while(1)
{
len=sizeof(kpeer);
if(recvfrom(skfd,buf,sizeof(buf),0,(struct sockaddr *)&kpeer,&len)<0)
printf("2\n");
else
printf("%s\n",buf);
}
}java 部分:
import java.io.*;
import java.net.*;class Sender2
{
public static void main (String [] args)
{
String host = "192.168.1.100";if (args.length == 1)
host = args [0];DatagramSocket s = null;try
{
s = new DatagramSocket ();byte [] buffer;
buffer = new String ("Send me a datagram").getBytes ();
InetAddress ia = InetAddress.getByName (host);DatagramPacket dgp = new DatagramPacket (buffer,buffer.length,ia,8848);}
catch (IOException e)
{
System.out.println (e.toString ());
}
finally
{
if (s != null)
s.close ();
}
}
}
s.send (dgp);
不知道哪儿有问题~~~~~~