网络编程两人聊天

ServerDemo

import java.io.* ;
import java.net.* ;
public class serverDemo {
    public static void main(String [] args){
        ServerSocket serverSocket = null ;
        Socket socket = null ;
        String line ;
        try{
            serverSocket = new ServerSocket (5555) ;
            socket = serverSocket.accept();
            System.out.println("Success") ;
            System.out.println();
            BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()))  ;
            BufferedReader sin = new BufferedReader (new InputStreamReader(System.in));
            PrintWriter os = new PrintWriter(socket.getOutputStream());
            System.out.println("From Client: " + in.readLine()) ;
            line = sin.readLine();
            while(!line.equals("bye")) {
                os.println(line) ;
                os.flush() ;
                System.out.println("From Client:" + in.readLine()) ;
                line = sin.readLine();
            }
            in.close() ;
            sin.close() ;
            os.close() ;
            socket.close();
            serverSocket.close();
        } catch (Exception e) {
            e.printStackTrace() ;
        }
    }
}

ClientDemo。

import java.net.* ;
import java.io.*;
public class ClientDemo {
    public static void main(String [] args){

        try{
            Socket socket = new Socket("192.168.1.116",5555) ;
            BufferedReader sin = new BufferedReader(new InputStreamReader(System.in)) ;
            BufferedReader in = new BufferedReader (new InputStreamReader(socket.getInputStream())) ;
            PrintWriter os = new PrintWriter(socket.getOutputStream()) ;
            String line ;
            line = sin.readLine() ;
            while(!line.equals("bye")){
                os.println(line) ;
                os.flush() ;
                System.out.println("Client:" + line);
                System.out.println("From Server:" + in.readLine()) ;
                line = sin.readLine() ;

            }
            os.close();
            sin.close() ;
            in.close();
            socket.close() ;
        }catch (Exception e) {
            e.printStackTrace() ;
        }
    }
}
时间: 2024-10-22 03:46:23

网络编程两人聊天的相关文章

java 网络编程-TCP-多人聊天(面向对象封装)

客户端:多个客户可以正常收发信息,因为可以同时发送和接受信息,不是发送完信息后等待返回信息,所以要加入多线程 public class Client { public static void main(String[]args) throws UnknownHostException, IOException { System.out.println("客户端启动中..."); Socket client =new Socket("localhost",9999);

Linux网络编程(多人在线聊天系统)

一.首先是服务器的建立 首先是一个信号终止程序,发信号ctrl+c终止程序,而是是初始化网络通信. 创建一个描述符负责绑定服务器和监听服务器接收客户端的消息. socket()->sockaddr_in->bind->listen(准备就绪) 开始接收客户端消息.start()函数 首先是声明一个结构体用来存储客户端的消息,利用accept()函数来创建一个新的 描述符来接收,这里有阻塞效果,也即是说连接的时候只能一个一个的连. 然后是分离线程处理这个sockfd的连接. pthread

网络编程懒人入门(六):史上最通俗的集线器、交换机、路由器功能原理入门

1.前言 即时通讯网整理了大量的网络编程类基础文章和资料,包括<TCP/IP协议 卷1>.<[通俗易懂]深入理解TCP协议>系列.<网络编程懒人入门>系列.<不为人知的网络编程>系列.<P2P技术详解>系列.<高性能网络编程>系列.甚至还有图文并貌+实战代码的<NIO框架入门>等,目的是帮助即时通讯类应用的开发者,至少要掌握网络编程最基本的原理,所谓知其然更要知其所以然.尤其现在移动网络大行其道的时代,在网络环境如此复杂的

网络编程懒人入门(九):通俗讲解,有了IP地址,为何还要用MAC地址?

1.前言 标题虽然是为了解释有了 IP 地址,为什么还要用 MAC 地址,但是本文的重点在于理解为什么要有 IP 这样的东西.本文对读者的定位是知道 MAC 地址是什么,IP 地址是什么. (本文同步发布于:http://www.52im.net/thread-2067-1-1.html) 2.关于作者 翟志军,个人博客地址:https://showme.codes/,Github:https://github.com/zacker330.感谢作者的原创分享. 作者的另一篇<即时通讯安全篇(七)

java网络编程实现两端聊天

网络编程的三要素: ip地址:唯一标识网络上的每一台计算机 端口号:计算机中应用的标号(代表一个应用程序),0-1024系统使用或者保留端口,有效端口0-65535(short) 通信协议:通信的规则 TCP UDP UDP:相当于发短信,不需要建立连接,数据包的大小限制在64k内,效率高,不安全,容易丢包 TCP:相当于打电话,需要建立连接,效率相对较低,数据传输安全,三次握手完成. 下面使用TCP进行网络通信: 服务端: 1 public static void main(String[]

网络编程-UDP程序聊天小程序

1 package com.yyq; 2 3 import java.io.BufferedReader; 4 import java.io.InputStream; 5 import java.io.InputStreamReader; 6 import java.net.DatagramPacket; 7 import java.net.DatagramSocket; 8 import java.net.InetAddress; 9 import java.net.SocketExcepti

【Python网络编程】多线程聊天软件程序

课程设计的时候制作的多线程聊天软件程序 基于python3.4.3 import socket import pickle import threading import tkinter import os import datetime import time try: import pymysql except: print("can't find pymysql") tcplocalport=8101 #TCP监听端口 tcpconnectport=8101 #TCP连接端口 u

网络编程牛人博客

1.很全,不过很多都是转载,值得一看 http://blog.csdn.net/cosmoslife/article/category/1145886/2 2.重点关注socket的使用细节和经验 http://blog.csdn.net/smilestone322/article/category/739966 3.一个tcp.udp的例子 http://blog.csdn.net/nana_93/article/details/8743525

java 网络编程-UDP-双人交互

发送端 public class my implements Runnable { private DatagramSocket client ; private BufferedReader reader; private String toip; //对方的ip private int toport; //对方的端口 public my(int port,String toip,int toport) { try { client=new DatagramSocket(port); read