计算机网络原理实验报告 基于TCPUDP的Socket编程

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告学院(系)名称:计算机科学与工程学院

Tcpsever:

package uppercase;

import java.io.*;

import .*;

class TCPServer{

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

{

String clientSentence;

String capitalizedSentence;

ServerSocket welcomeSocket = new ServerSocket(1234);

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);

}

}

}

用udp完成字符串大写

Udpsever:

package uppercase;

import java.io.*;

import .*;

class UDPServer {

clientSocket.send(sendPacket);

DatagramPacket receivePacket =

new DatagramPacket(receiveData, receiveData.length);

clientSocket.receive(receivePacket);

String modifiedSentence =

new String(receivePacket.getData());

System.out.println("FROM SERVER:" + modifiedSentence);

clientSocket.close();

}

}

用tcp传输文件

package uppercase;

import java.io.*;

import .Socket;

class TCPFileClient {

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

{

String HOST = "0.0.0.0";

String filePath = "D:/bn/";

BufferedReader infromUser = new BufferedReader(new InputStreamReader(System.in));

String fileName = infromUser.readLine();

BufferedWriter bWriter = new BufferedWriter(new FileWriter(filePath + fileName));

Socket clientSocket = new Socket(HOST, 8810);

DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());

Socket connectionSocket = welcomeSocket.accept();

BufferedReader infromClient = new BufferedReader(new InputStreamReader(connectionSocket. getInputStream()));

DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());

fileName = infromClient.readLine();

BufferedReader bReader = new BufferedReader(new FileReader(filePath + fileName));

String strLine = null;

outToClient.writeBytes("PREPARE\n");

while((strLine = bReader.readLine()) != null) {

System.out.println(strLine);

if (infromClient.readLine().contains("OK")){

outToClient.writeBytes(strLine + '\n');

}

}

outToClient.writeBytes("DONE\n");

break;

}

}

}

5.实验结论与分析:

通过此次实验使我熟悉和掌握socket编程的基本理论和方法。掌握基于TCP和UDP的工作原理以及Socket编程的一般方法,能够编写简单的网络应用程序。为以后的学习打下了良好的基础。

相关文档
最新文档