基於tcp實現用戶輸入一個字符串,服務端返回一個相應大寫字符串

上一篇博客中,我們瞭解了基於UDP協議下的發送與接收信息並完成了簡單的java代碼實現工作,今天咱們就一起來看一下基於TCP協議完成數據的發送與接收服務

主要步驟如下:

1、客戶端發送數據

2、服務端接收數據

3、服務端轉換數據

4、服務端發出數據

5、客戶端接收數據

客戶端:

package com.zzxtit.tcp;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

/**
*author 秦飛陽
*/

public class ClientDemo {
	
	public static void main(String[] args) throws IOException{
		//客戶端發送數據
		Socket s = new Socket(InetAddress.getByName("manxiaoyu"), 10086);
		OutputStream os = s.getOutputStream();
		String str = "hello tcp";
		os.write(str.getBytes());
		
		//客戶端接收返回的數據
		InputStream is = s.getInputStream();
		byte[] bys = new byte[1024];
		int len;
		len=is.read(bys);
		//輸出
		System.out.println(new String(bys,0,len));
		
		os.close();
		s.close();
	}

}

服務端:

package com.zzxtit.tcp;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import javax.print.DocFlavor.INPUT_STREAM;

/**
*author 秦飛陽
*/
public class ServerDemo {
	
	public static void main(String[] args) throws IOException {
		
		//服務端接收數據
		ServerSocket ss = new ServerSocket(10086);
		Socket s = ss.accept();
		InputStream is = s.getInputStream();
		
		byte[] bys  = new byte[1024];
		int len;
		len = is.read(bys);
		String str = new String(bys);
		System.out.println(str);
		
		//服務端轉化爲大寫
		String upperStr = str.toUpperCase();
		
		//服務端發送數據
		OutputStream os = s.getOutputStream();
		os.write(upperStr.getBytes());
		
		//System.out.println(new String(bys));
		s.close();
		//ss.close();
	}
}

ok,完畢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章