Socket 程式設計 (網路篇)
Socket (ip,port)任何臺機兩個要連在一起需要 ip和port ( 埠 監聽)。只要port相同。
一臺機器有幾個程式,每個程式需要一個埠,傳遞接受包。網站的埠80。
ServerSocket ( port )伺服器開啟。
如果Socket s1發出訊息,accept ( ) 接受以後建立Socket s2與之對應。
Socket s2 = accept ;
Socket的兩個類,InputStream(輸入),OutputStream(輸出).
package Server;
//控制檯找ip:ipconfig
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Server {
public static int port=3000;
public static final String ip="192.168.31.146";
public static void main(String[] args) {
// System.out.println("開始"+port+"連上啟動伺服器。。。");
try{
ServerSocket ss = new ServerSocket(port);//建立Socket 傳入值。
System.out.println("成功啟動伺服器,埠:"+port);
Socket socket = ss.accept();//開啟伺服器。接受資料,返回socket
System.out.println("連上客戶端。。。");
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));//寫資料
BufferedWriter output = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));//出資料
String clientMsg;//傳送的資料
String serverMsg;//接受的資料
Scanner sc = new Scanner(System.in);
clientMsg = input.readLine();
while(clientMsg !="bye"){
System.out.println(clientMsg);
serverMsg = sc.nextLine();//等待發訊息
output.write(serverMsg+"\r\n");
output.flush();//傳送
clientMsg = input.readLine();
}
sc.close();
ss.close();//socket埠關閉
}catch(IOException e){
e.printStackTrace();
}
}
}
package Server;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.util.Scanner;
public class Client {
//s.getInputStream(位元組)->InputStreamReader(字元)->Buffered(句子,可以定時傳送。)客戶端也可使用,取決於需求。
public static int port=3006;
public static final String ip="192.168.31.146";//連線其他的客戶端。
public static void main(String[] args) {
try{
Socket s = new Socket(ip,port);//建立Socket 傳入值。
System.out.println("連上伺服器端。。。");
BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream()));//放資料
BufferedWriter output = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));//拿資料
String clientMsg;//傳送資料
String serverMsg;//接受資料
Scanner sc = new Scanner(System.in);
clientMsg = sc.nextLine();
while(clientMsg !="bye"){
output.write(clientMsg+"\r\n"); //"\r\n"換行
output.flush();//傳送
serverMsg = input.readLine();//等待發訊息
System.out.println(serverMsg);//列印訊息
}
sc.close();
s.close();
}catch(IOException e){
e.printStackTrace();//
}
}
}
相關文章
- Python網路Socket程式設計Python程式設計
- Socket網路程式設計程式設計
- 網路程式設計-socket程式設計
- python網路-Socket之TCP程式設計(26)PythonTCP程式設計
- HUST-計算機網路實驗-socket程式設計計算機網路程式設計
- 網路程式設計之socket程式設計
- python 網路篇(網路程式設計)Python程式設計
- C語言Socket程式設計(計算機網路作業)C語言程式設計計算機網路
- python:socket網路程式設計Python程式設計
- Python Socket 網路程式設計Python程式設計
- 【網路程式設計】socket詳解程式設計
- 網路程式設計-Socket通訊程式設計
- SOCKET程式設計程式設計
- Java 網路程式設計 —— Socket 詳解Java程式設計
- go socket、http網路程式設計demoGoHTTP程式設計
- Linux Socket C語言網路程式設計:TCP SocketLinuxC語言程式設計TCP
- Linux Socket C語言網路程式設計:UDP SocketLinuxC語言程式設計UDP
- 玩轉 PHP 網路程式設計全套之 socket stream 程式設計PHP程式設計
- socket程式設計(1)程式設計
- Java Socket程式設計Java程式設計
- Java Socket程式設計Java程式設計
- WCF、Socket程式設計程式設計
- Socket程式設計(九)程式設計
- Socket程式設計模型程式設計模型
- Linux Socket C語言網路程式設計:Select SocketLinuxC語言程式設計
- 網路程式設計基礎-socket基礎程式設計
- python網路程式設計學習筆記(3):socket網路伺服器Python程式設計筆記伺服器
- Socket網路程式設計基礎與實踐:建立高效的網路通訊程式設計
- 網際網路和區域網網路程式設計Socket緩衝區最優總結程式設計
- Python socket程式設計Python程式設計
- Socket程式設計基礎程式設計
- socket程式設計實戰程式設計
- Socket 程式設計實戰程式設計
- IO和socket程式設計程式設計
- Java Socket 程式設計指南Java程式設計
- linux Socket 程式設計Linux程式設計
- python資源庫——socket網路程式設計Python程式設計
- Python 爬蟲 (三) - Socket 網路程式設計Python爬蟲程式設計