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

Connection reset错误

Connection reset错误

随便一个名 2016-12-18 12:12:37
客户端 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; public class Client { public static void main(String[] args) { try { // 创建客服端Scoket,指定服务器地址和端口 Socket socket = new Socket("192.168.1.67", 8787);// localhost表示本地地址 // 获取输出流,想服务器端发送信息 OutputStream outputStream = socket.getOutputStream();// 字节流输出 PrintWriter printWriter = new PrintWriter(outputStream);// 将字节流转换成(包装为)打印流 printWriter.write("用户名:admin\t密码:123123"); printWriter.flush();// 调用flush()刷新缓存 socket.shutdownInput();// 关闭输出流 //获取输入流,并读取服务器端的响应信息 InputStream inputStream=socket.getInputStream(); InputStreamReader inputStreamReader=new InputStreamReader(inputStream); BufferedReader bufferedReader=new BufferedReader(inputStreamReader); String data=bufferedReader.readLine(); if (data!=null) { System.out.println("我是客服端:服务器说"+data); } // 关闭资源 inputStreamReader.close(); bufferedReader.close(); inputStream.close(); outputStream.close(); printWriter.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } 服务器 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.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) { try { // 创建一个服务器端的Socket,即ServerSocket。指定绑定端口,并监听 ServerSocket serverSocket = new ServerSocket(8787); System.out.println("*********服务器即将启动,等待客户端连接********"); // 调用accept()开始监听,等待客户端连接。 Socket socket = serverSocket.accept(); // 获取输入流,并读取客户端信息。 InputStream inputStream = socket.getInputStream();// 字节流输入 InputStreamReader inputStreamReader = new InputStreamReader(inputStream);// 将字节流转化为字符流 BufferedReader bufferedReader = new BufferedReader(inputStreamReader);// 为输入流添加缓冲 String data = null; while ((data = bufferedReader.readLine()) != null) { System.out.println("我是服务器:客服端说:" + data); // data = bufferedReader.readLine(); } // 循环读出客户端的信息 // 获取输出流,响应客户端请求 OutputStream outputStream = socket.getOutputStream(); PrintWriter printWriter = new PrintWriter(outputStream);// 包装为打印流 printWriter.write("欢迎您"); printWriter.flush();// 调用flush()将缓存输出 // 关闭相关的资源 socket.shutdownInput();// 关闭输入流 printWriter.close(); outputStream.close(); inputStream.close(); inputStreamReader.close(); bufferedReader.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 错误 *********服务器即将启动,等待客户端连接******** java.net.SocketException: Connection reset at java.net.SocketInputStream.read(Unknown Source) at java.net.SocketInputStream.read(Unknown Source) at sun.nio.cs.StreamDecoder.readBytes(Unknown Source) at sun.nio.cs.StreamDecoder.implRead(Unknown Source) at sun.nio.cs.StreamDecoder.read(Unknown Source) at java.io.InputStreamReader.read(Unknown Source) at java.io.BufferedReader.fill(Unknown Source) at java.io.BufferedReader.readLine(Unknown Source) at java.io.BufferedReader.readLine(Unknown Source) at Server.main(Server.java:24)
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 3594 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信