------
Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------package com.itheima;
/**
第10题:
使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。
服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印。
@author
思路:
步骤:
*/
import java.io.*;
import java.net.*;
import java.util.Scanner;
class TcpServer//服务端
{
public static void main(String[] args)throws Exception
{
Socket s=null;
try{
while(true)
{
@SuppressWarnings("resource")
ServerSocket serverSocket=new ServerSocket(10001);
s=serverSocket.accept();
BufferedReader server_buf=new BufferedReader(new InputStreamReader(s.getInputStream()));
String str=server_buf.readLine();
System.out.println("服务端接受到数据...");
Thread.sleep(10000);
PrintStream pri=new PrintStream(s.getOutputStream());
System.out.println("服务端将字符串反转后发送给客户端...");
pri.println(new StringBuffer(str).reverse());//将反转后的字符串打印到客户端屏幕上
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally{
if(s!=null){
try{
s.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
}
class TcpClient//客户端
{
public static void main(String[] args)throws Exception
{
Socket s=null;
try
{
s=new Socket(InetAddress.getLocalHost(),10001);
while(true){
BufferedReader client_buf=new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintStream pri=new PrintStream(s.getOutputStream());
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str=sc.nextLine();
System.out.println("正在向服务器发送数据...");
pri.println(str);
System.out.println("接受来自服务器反转的字符串...");
System.out.println(client_buf.readLine());
sc.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally{
if(s!=null){
try{
s.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
}
/**
第10题:
使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。
服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印。
@author
思路:
步骤:
*/
import java.io.*;
import java.net.*;
import java.util.Scanner;
class TcpServer//服务端
{
public static void main(String[] args)throws Exception
{
Socket s=null;
try{
while(true)
{
@SuppressWarnings("resource")
ServerSocket serverSocket=new ServerSocket(10001);
s=serverSocket.accept();
BufferedReader server_buf=new BufferedReader(new InputStreamReader(s.getInputStream()));
String str=server_buf.readLine();
System.out.println("服务端接受到数据...");
Thread.sleep(10000);
PrintStream pri=new PrintStream(s.getOutputStream());
System.out.println("服务端将字符串反转后发送给客户端...");
pri.println(new StringBuffer(str).reverse());//将反转后的字符串打印到客户端屏幕上
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally{
if(s!=null){
try{
s.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
}
class TcpClient//客户端
{
public static void main(String[] args)throws Exception
{
Socket s=null;
try
{
s=new Socket(InetAddress.getLocalHost(),10001);
while(true){
BufferedReader client_buf=new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintStream pri=new PrintStream(s.getOutputStream());
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str=sc.nextLine();
System.out.println("正在向服务器发送数据...");
pri.println(str);
System.out.println("接受来自服务器反转的字符串...");
System.out.println(client_buf.readLine());
sc.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally{
if(s!=null){
try{
s.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
}