日期:2014-05-17  浏览次数:20732 次

Java网络编程的小问题
Java code

try{
            InetAddress addr ;
            Socket sock = new Socket(args[0],80) ;
            addr = sock.getInetAddress() ;
            System.out.println("Connected to " + addr);
            sock.close() ;
        }catch(java.io.IOException e){
            System.out.println("Can't connect to " + args[0]);
            System.out.println(e) ;
        }


非常简单的一个网络程序,为什么总是报错 “java.net.ConnectException: Connection refused: connect”,
我传入的参数是“localhost”,不论传入什么参数都报异常,很费解!

------解决方案--------------------
测试用的么 为什么要用80
换一个端口自己开一个 别用80 试试
------解决方案--------------------
你连接端口,至少要确定目标端口是有监听服务的吧?

比如: www.baidu.com 80
------解决方案--------------------
换端口,最好换个别的主机
------解决方案--------------------
ServerSocket ss=new ServerSocket(9999);
try{
InetAddress addr ;
Socket sock = new Socket("localhost",9999) ;
addr = sock.getInetAddress() ;
System.out.println("Connected to " + addr);
sock.close() ;
}catch(java.io.IOException e){
// System.out.println("Can't connect to " + args[0]);
System.out.println(e) ;
}
------解决方案--------------------
主要是你没打开监听端口,当然也可以找几个现成的,在doc下输入netstat -a -n状态为listening都可以链接