为了账号安全,请及时绑定邮箱和手机立即绑定

应该已经完全按照教程书写了代码~~然而总是不对~~~

就是这个结果~~~http://img1.sycdn.imooc.com//56cf0acf000112cf07090334.jpg

正在回答

4 回答

你把源代码贴一下啊。可能是你port设置有问题。或者你客户端的socket没close

0 回复 有任何疑惑可以回复我~
#1

啊梨真神奇 提问者

谢谢!已经解决了!
2016-02-26 回复 有任何疑惑可以回复我~
#2

啊梨真神奇 提问者

您好!看错了,其实并没有解决,惭愧~~~~~~下面贴出详细的过程,望指教!
2016-02-26 回复 有任何疑惑可以回复我~

我也遇到同样的问题,我解决这个问题是我想着loaclhost,就是socket构造方法中的Socket(String host, int port)
          创建一个流套接字并将其连接到指定主机上的指定端口号。     因此,我觉得自己的问题出现在String host中,构造方法中的参数类型是String,老师输入的localhost,即是意思着本机的地址,所以我用方法获取本机的地址。把它代替了“localhost”,获取本机地址的方法不用我吧。这下面是我成功后的代码。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import java.net.InetAddress;

/*
 * 客户端
 */
public class Client {
	public static void main(String[] args) {
		 InetAddress address;
		try {
			address = InetAddress.getLocalHost();
			try {
				//建立客户端,指定服务器端口和地址
				Socket socket = new Socket(address.getHostAddress(),8888);
				//获取输出流,想服务器端发送登录信息
				OutputStream os = socket.getOutputStream();//获取输出流
				PrintWriter pw = new PrintWriter(os);      //将输出流包装为打印流
				pw.write("用户名:kjx,密码:093022");
				pw.flush();
				socket.shutdownOutput();   //关闭输出流
				
				//关闭资源
				pw.close();
				os.close();
				
			} catch (UnknownHostException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		
		} catch (UnknownHostException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		
}
}


1 回复 有任何疑惑可以回复我~

说你没有连接  看看端口号  或者你没开服务端先开的客户端

0 回复 有任何疑惑可以回复我~

56d04e8f0001552805000271.jpg

56d04e8f000145be05000257.jpg

56d04e900001110605000244.jpg

打断点调试,进行到第一张图之后,直接跳到最后抛出错误,最后一张是错误的具体信息~~~~~~

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

应该已经完全按照教程书写了代码~~然而总是不对~~~

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信