欢迎来到天天文库
浏览记录
ID:22294092
大小:58.00 KB
页数:7页
时间:2018-10-28
《套接字编程实验报告 》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Programing实验物联2班201208080228赵智慧1.实验题目:利用套接字编程,编写出TCP和UDP的客户机、服务器程序进行交互2.实验代码:1.TCP服务器:packageTCP;importjava.io.BufferedReader;importjava.io.lOException;importjava.io.InputStreamReader;importjava.net.ServerSocket;importjava.net.Socket;publicclassTCPServer{publicstaticvoidm
2、ain(String[]args)throwslOException{ServerSocketserver=newServerSocket(7999);System.out.println(Hserverok");Socketsocket=server.accept();BufferedReaderbf=newBufferedReader(newInputstreamReader(socket.getlnputStream()));Stringstr=bf.readLine();while(str!=null){System.out.pr
3、intIn(str);str=bf.readLine();}}}2.TCP客户机:packageTCP;importjava.io.BufferedReader;importjava.io.DataOutputStream;importjava.io.lOException;importjava.io.InputStreamReader;importjava.io.Outputstream;importjava.io.PrintWriter;importjava.net.Socket;importjava.net.UnknownHostE
4、xception;publieclassTCPCIient{publiestaticvoidmain(String[]args)throwsUnknownHostException,lOException{Stringsentence;InputStreamReaderisr=newInputStreamReader(System.in);BufferedReaderinFromUser=newBufferedReader(isr);Socketclientsocket=newSocket("127.0.0.1",7999);senten
5、ce=inFromUser.readLine();OutputStreamos=dientSocket.getOutputStream();PrintWriteroos=newPrintWriter(os);os.write(sentence.getBytes());clientSocket.close();}}1.UDP服务器:packageUDP;importjava.net.DatagramPacket;importjava.net.DatagramSocket;importjava.net.InetAddress;importja
6、va.net.SocketException;publicclassUDPServer{publicstaticvoidmain(String[]args)throwsException{DatagramSocketserverSocket=newDatagramSocket(9876);"戶斤有发送和接收的数据都将通过该套接字//因为UDP无连接,所以无需创建一个新的套接字监听新的请byte[]receivel=newbyte[1024];byte[]receive2=newbyte[1024];byte[]sendl=newbyte[
7、1024];byte[]send2=newbyte[1024];byte[]send3=newbyte[1024];while(true){DatagramPacketreceivePacket=newDatagramPacket(receivel,receivel.length);serverSocket.receive(receivePacket);Stringstr=newString(receivePacket.getData(});//从分组中提取出数据,并存入str中InetAddressip=receivePacket.ge
8、tAddress();//提取IP地址intport=receivePacket.getPort();//提取客户机端门号Stringask="请选择:1.将其转化为大写2.将a字符替换为c字
此文档下载收益归作者所有