付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1页共2页实验报告学院(系)名称:计算机科学与工程学院姓名学号专业计算机科学与技术班级实验项目实验二:基于TCP/UDP的Socket编程课程名称计算机网络原理课程代码实验时间2022年3月29日、4月1日实验地点考核标准实验准备(实验目的/工具熟悉情况)10分实验过程(实验方案可行性及步骤完整性)40分实验报告(实验内容丰富度与格式清晰度)30分实验结果(结论正确性以及分析合理性)20分成绩教师签字:考核内容评价实验目的是否明确,实验工具是否清晰了解以及熟悉情况○可行,完整○可行,不完整○不可行,不完整○丰富,清晰○较丰富,较清晰○丰富,不清晰○不丰富,不清晰○结论正确,分析合理○结论正确,分析不充分○结论不正确,分析不合理实验目的熟悉和掌握socket编程的基本理论和方法。掌握基于TCP和UDP的工作原理以及Socket编程的一般方法,能够编写简单的网络应用程序实验工具Eclipse、Java语言、SocketTool调试工具3.实验方案请在以下题目中选择一个,按照要求完成实验,并完成实验报告。编程可以使用任何高级语言,建议使用Java、Python或C++。利用Java、Python或C++语言,基于TCP或UDP编写一个简单的Client/Server网络应用程序。要求实现客户向服务器传输一个文件,服务器将收到的文件进行保存。进一步改进a)的程序,使之更实用。比如传输文件夹等。(有难度,可以根据自身情况选做)4.实验步骤:1、编写TCPClient.java,用SocketTool创建sever端,调试客户端是否可以正常传递给服务端所读文件内容。2、编写TCPSever.java3、主要思想是客户端通过FileInputStream读取文件夹内容,通过DataOutputStream传递给服务端,服务端通过BufferedReader读取客户端传递过来的文件内容,通过PrintWriter写入指定的文件里面。5.实验结论与分析:(结合理论知识总结实验结果,并对其正确性、创新性进行分析以及本次实验心得体会)实验代码:TCPClient.javapackageputer;importjava.io.*;import.*;publicclassTCPClient{ publicstaticvoidmain(String[]args)throwsException{ FileInputStreamin=newFileInputStream("C:\\Users\\dell\\Desktop\\计算机网络实验\\client\\a.txt"); SocketclientSocket=newSocket("",6789); DataOutputStreamoutToServer=newDataOutputStream(clientSocket.getOutputStream()); byte[]buff=newbyte[1024]; intlen; while((len=in.read(buff))!=-1){ outToServer.write(buff,0,len); } System.out.println("文件传输完成"); in.close(); clientSocket.close(); }}TCPServer.javapackageputer;importjava.io.*;import.*;publicclassTCPServer{ publicstaticvoidmain(String[]args)throwsException{ Stringsentence; StringClientSentence; Stringfile="C:\\\\Users\\\\dell\\\\Desktop\\\\计算机网络实验\\\\server\\\\b.txt"; PrintWriterpw=newPrintWriter(file); ServerSocketwelcomeSocket=newServerSocket(6789); SocketconnectionSocket=welcomeSocket.accept(); BufferedReaderinfromClient=newBufferedReader(newInputStreamReader(connectionSocket.getInputStream())); Stringss; while((ss=infromClient.readLine())!=null){ pw.println(ss); } pw.close(); connectionSocket.close(); }}结果截图:实验心得体会:基本了解和掌握如何利用Java、Python或C++语言,基于TCP或UDP编写一个简单的Client/Server网络应用程序。要求实现客户向服务器传输一个文件,服务器将收到的文件进行保存。过程中遇到了两个问题,第一个问题:一开始传递中文出现乱码,英文和数字没有问题,用字节流传递可以避免这个问题,另外要保证Java项目和文件的encoding一致。第二个问题,服务端接收过来的文件内容无法换行保存在文件里。用PrintWriter代替FileOutputS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房地产经纪人创新思维能力考核试卷含答案
- 染料合成工安全防护知识考核试卷含答案
- 染料拼混工岗前实操知识水平考核试卷含答案
- 酵母营养盐工安全演练知识考核试卷含答案
- 医学26年:高血压指南更新要点解读 心内科查房
- 医学26年:移植后感染并发症防控 查房课件
- 医学26年:CNLC分期解读 查房课件
- 医学26年:内分泌职称考试要点 查房课件
- 26年基因检测职称考试考点梳理
- 市场竞争的立体攻防-创新策略赢在竞争中
- 2026秋招:重庆水务环境控股集团笔试题及答案
- 智能网联汽车概论 课件 4-1 认知智能网联汽车操作系统
- 老年人能力评估 能力评估
- 《 资本论 选读》教学大纲
- GB/T 23769-2009无机化工产品水溶液中pH值测定通用方法
- GB 4706.15-2008家用和类似用途电器的安全皮肤及毛发护理器具的特殊要求
- 《眼科学》课件-温医大-视神经及视路疾病
- 四百米障碍完整的教案
- 《材料分析测试技术》全套教学课件
- 天津英华插班生考试卷五年级
- 2021一级消防工程师继续教育考试石油化工类答案
评论
0/150
提交评论