1. 程式人生 > >網路程式設計:實現簡單的內網一對一互聊

網路程式設計:實現簡單的內網一對一互聊

伺服器端

import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

/** 
* @author  萬星明
* @version 建立時間:2018年10月22日 下午2:51:27 
*/
public class Server {

	public static void main(String[] args) throws Exception {
		
		//建立socket伺服器物件
		@SuppressWarnings("resource")
		ServerSocket ss = new ServerSocket(7777);
		System.out.println("與伺服器連線中");
		//監聽客戶端的請求
		Socket socket = ss.accept();
		//建立網路輸入流物件
		InputStream is = socket.getInputStream();
		//讀取客戶端socket中傳送的資料
		byte[] b= new byte[100];
		int len = is.read(b);
		String s = new String(b,0,len);
		System.out.println("客戶端對伺服器說:"+s);
		
		//建立網路輸出流物件
		OutputStream os = socket.getOutputStream();
		//伺服器回覆客戶端訊息
		os.write("你也好啊".getBytes());
		os.flush();
		

	}

}

客戶端

import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;

/** 
* @author  萬星明
* @version 建立時間:2018年10月22日 下午2:45:05 
*/
public class Client {

	public static void main(String[] args) throws Exception {
		
		//建立Socket物件
		Socket socket = new Socket("127.0.0.1", 7777);
		//建立網路輸出流物件
		OutputStream os = socket.getOutputStream();
		//向伺服器寫入訊息
		os.write("你好啊".getBytes());
		os.flush();
		
		//建立網路輸入流物件
		InputStream is = socket.getInputStream();
		//讀取伺服器的回覆
		byte[] b = new byte[100];
		int len  = is.read(b);
		String s = new String(b,0,len);
		System.out.println("伺服器回覆:"+s);
		//關流
		os.close();
		is.close();
		socket.close();
	}

}