欢迎来到天天文库
浏览记录
ID:60814713
大小:274.41 KB
页数:7页
时间:2020-12-20
《实验15、16-基于JAVA的网络编程.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、南华大学计算机学院实验报告课程名称计算机网络原理姓名徐望成学号专业软件工程(人工智能方向)班级18软智01班日期2020年6月1日南华大学基于JAVA的网络编程(开放性实验)1.实验目标:掌握基于SOCKET的网络编程方法。基于JAVA语言,编写一个网络应用程序。2.实验内容(任选一个)即时通信小程序文件传输小程序3.实验平台Windows操作系统,Linux操作系统。JAVA开发平台(不限)。4.参考书籍《JAVANETWORKPROGRAMMING》即时通信小程序1、介绍:本小程序包含两个类,一个是TestSend类,用于发送信息,另一个是TestReceive类,用于接
2、收消息。制作这个小程序主要使用了DatagramPacket类和DatagramSocket类中的方法,用于即时通信。2、实验源代码:TestReceive类packagetransmition6;importjava.io.IOException;importjava.net.DatagramPacket;importjava.net.DatagramSocket;importjava.net.InetAddress;importjava.net.SocketException;importjava.util.Scanner;publicclassTestReceive{/
3、/接收方publicstaticvoidmain(String[]args){System.out.println("咨询老师上线。。。");//创建一个套接字,并且指定端口号为9999DatagramSocketds=null;Scannersc=null;try{ds=newDatagramSocket(9999);while(true){//接收数据,byte[]b=newbyte[1024];DatagramPacketdp=newDatagramPacket(b,b.length);ds.receive(dp);//处理数据Stringstr=newString(d
4、p.getData(),0,dp.getLength());System.out.println("学生:"+str);if("bye".equals(str)){System.out.println("老师结束了对话。。。");break;}//老师回复:sc=newScanner(System.in);System.out.print("我:");Stringstr2=sc.next();byte[]b2=str2.getBytes();DatagramPacketdp2=newDatagramPacket(b2,b2.length,InetAddress.getByNa
5、me("192.168.1.45"),8888);ds.send(dp2);}}catch(IOExceptione){e.printStackTrace();}finally{sc.close();ds.close();}}}TestSend类packagetransmition6;importjava.io.IOException;importjava.net.DatagramPacket;importjava.net.DatagramSocket;importjava.net.InetAddress;importjava.net.SocketException;impo
6、rtjava.net.UnknownHostException;importjava.util.Scanner;publicclassTestSend{//发送方publicstaticvoidmain(String[]args){System.out.println("学生上线。。。");//创建套接字,8888指的是发送方端口DatagramSocketds=null;Scannersc=null;try{ds=newDatagramSocket(8888);while(true){//发送数据sc=newScanner(System.in);System.out.pri
7、nt("我:");Stringstr=sc.next();byte[]b=str.getBytes();DatagramPacketdp=newDatagramPacket(b,b.length,InetAddress.getByName("192.168.1.45"),9999);//发送ds.send(dp);if("bye".equals(str)){System.out.println("学生结束了对话。。。");break;}byte[]b2=newbyte[1024];DatagramPac
此文档下载收益归作者所有