计算机网络实验Programming实验

本实验报告详细介绍了利用Java进行TCP和UDP套接字编程,实现客户机/服务器间的字符交互。实验内容包括TCP客户机发送数据到服务器,服务器接收并返回大写数据,以及UDP客户机与服务器的双向通信,包括选择性操作。通过对比分析,展示了TCP的可靠传输与UDP的不可靠服务特性。
摘要由CSDN通过智能技术生成

Programming实验报告

 

一、         实验题目

利用套接字编程,编写出TCP和UDP的客户机/服务器程序进行交互。

 

二、         实验内容

1.      一台客户机从其标准输入(键盘)读取一行字符,并通过其套接字将该行发送到服务器。

2.      服务器从其连接套接字读取一行字符。

3.      服务器将该行字符转换成大写。

4.      服务器将修改后的行通过其连接套接字再发回给客户机。

5.      客户机从其套接字中读取修改后的行,然后将该行在其标准输出(监视器)上打印出来。

 

 

 

 

 

 

三、         代码及运行结果

1.    TCP

 

书上提供的代码:

 

 

package TCP;

import java.io.*;

import java.net.*;

 

public class TCPServer {

   public static void main(String argv[]) throws Exception

   {

      String clientSentence;

      String capitalizedSentence;

      ServerSocket welcomeSocket=new ServerSocket(6789);//服务端套接字欢迎套接字第一次

      while(true) { //连接成功

         Socket connectionSocket=welcomeSocket.accept();//连接套接字

         BufferedReader inFromClient=new BufferedReader(//从套接字读

               new InputStreamReader(connectionSocket.getInputStream()));

         DataOutputStream outToClient=new DataOutputStream(//写到客户端

               connectionSocket.getOutputStream());

         clientSentence=inFromClient.readLine();

      capitalizedSentence=clientSentence.toUpperCase()+'\n';//变成大写

         outToClient.writeBytes(capitalizedSentence);//返回给客户端

      }

   }

}

 

package TCP;

import java.io.*;

import java.net.*;

 

public class TCPClient {

   public static void main(String argv[]) throws Exception

   {

      String sentence;

      String modifiedSentence;

      BufferedReader inFromUser=new BufferedReader(//键盘输入

            new InputStreamReader(System.in));

      Socket clientSocket=new Socket(InetAddress.getLocalHost(),6789);//套接字建立时主机地址

      DataOutputStream outToServer=new DataOutputStream(

            clientSocket.getOutputStream());//服务器发的内容

      BufferedReader inFromServer=new BufferedReader(

            new InputStreamReader(clientSocket.getInputStream()));//

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值