網路程式設計:實現簡單的內網一對一互聊
阿新 • • 發佈:2018-12-19
伺服器端
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(); } }