這裏主要是傳送一個整型數爲例子:
在服務器端:
package tcp;
import java.io.DataInputStream;//添加相關頭文件
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
import org.omg.CORBA.portable.InputStream;
public class server {
private int port=8000;//注意端口號要一致
private static ServerSocket serverSocket;
public server()throws IOException//要注意拋出異常
{
serverSocket=new ServerSocket(port,3);//服務器端創建套接字
System.out.println("服務器啓動");
}
public static void service()
{
while(true){//服務器一般是無限循環
Socket socket=null;
try{
socket=serverSocket.accept();
DataInputStream in=new DataInputStream(socket.getInputStream());//使用數據包輸入流獲取信息
int c;
c=in.readInt();//讀取一個整型數
System.out.println(c);
socket.close();
}catch(IOException e){
e.printStackTrace();
}
finally{
try{
if(socket!=null)
socket.close();//不管怎麼樣,都要關閉套接字
}
catch(IOException e){
e.printStackTrace();
}
}
}
}
public static void main(String[] args) throws IOException {//要拋出異常
server s=new server();
service();
}
private int port=8000;//注意端口號要一致
private static ServerSocket serverSocket;
public server()throws IOException//要注意拋出異常
{
serverSocket=new ServerSocket(port,3);//服務器端創建套接字
System.out.println("服務器啓動");
}
public static void service()
{
while(true){//服務器一般是無限循環
Socket socket=null;
try{
socket=serverSocket.accept();
DataInputStream in=new DataInputStream(socket.getInputStream());//使用數據包輸入流獲取信息
int c;
c=in.readInt();//讀取一個整型數
System.out.println(c);
socket.close();
}catch(IOException e){
e.printStackTrace();
}
finally{
try{
if(socket!=null)
socket.close();//不管怎麼樣,都要關閉套接字
}
catch(IOException e){
e.printStackTrace();
}
}
}
}
public static void main(String[] args) throws IOException {//要拋出異常
server s=new server();
service();
}
}
在客戶端:
package tcp;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.net.Socket;
import java.io.DataOutputStream;
import java.net.Socket;
public class client {
public static void main(String[] args)throws Exception {
String host="localhost";
int port=8000;//端口一致
Socket socket=new Socket(host,port);
DataOutputStream dis=new DataOutputStream(socket.getOutputStream());//輸出流輸出數據到服務器端
dis.writeInt(4);寫入一個整型數
socket.close();//別忘了要關閉套接字
}
public static void main(String[] args)throws Exception {
String host="localhost";
int port=8000;//端口一致
Socket socket=new Socket(host,port);
DataOutputStream dis=new DataOutputStream(socket.getOutputStream());//輸出流輸出數據到服務器端
dis.writeInt(4);寫入一個整型數
socket.close();//別忘了要關閉套接字
}
}
運行完之後的看到:服務器啓動
運行完之後的看到:服務器啓動
4