TCP传输,服务端+客户端

利用tcp协议写的一个简单的聊天案例:

服务端:

Scanner input = new Scanner(System.in);
		try {
			//创建socket服务端,并指定端口号
			ServerSocket server = new ServerSocket(2369);
			System.out.println("服务端已启动...");
			//服务端监听此套接字,并返回socket对象
			Socket accept = server.accept();
			
			while(true) {
			//InetAddress inetAddress = accept.getInetAddress();
			//从套接字中获取相应的流对象和客户端进行通话
			InputStream is = accept.getInputStream();
			OutputStream os = accept.getOutputStream();
			//将字节流转换为字符流
			InputStreamReader isr = new InputStreamReader(is);
			//将流加入缓冲区
			BufferedReader br = new BufferedReader(isr);
			//将输出流转换为打印流
			PrintWriter printWriter = new PrintWriter(os,true);
			
				String readLine = br.readLine();
				System.out.println(readLine);
				System.out.print("服务端输入:");
				String next = input.next();
				printWriter.println(next);
				//printWriter.flush();
				//accept.shutdownOutput();
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

 

 

客户端:

            Scanner input = new Scanner(System.in);
		try {
			Socket socket = new Socket("127.0.0.1", 2369);

			while (true) {
			InputStream is = socket.getInputStream();
			OutputStream os = socket.getOutputStream();

			// 将字节流转换为字符流
			InputStreamReader isr = new InputStreamReader(is);
			// 将流加入缓冲区
			BufferedReader br = new BufferedReader(isr);
			// 将输出流转换为打印流
			PrintWriter printWriter = new PrintWriter(os, true);
				System.out.print("客户端输入:");
				String next = input.next();
				printWriter.println(next);
				// printWriter.flush();
				//socket.shutdownOutput();
				String readLine = br.readLine();
				System.out.println(readLine);
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值