java TCP&UDP socket编程示例
来源:互联网 发布:淘宝css装修代码大全 编辑:程序博客网 时间:2024/06/06 13:58
在《计算机网络-自顶向下方法 》第四版的2.7 2.8两节的TCP和UDP套接字编程练习中有下面的源码:
< 一>UDP socket
package UDP;
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) throws IOException {
BufferedReader infromuser = new BufferedReader(new InputStreamReader(System.in));//定义一个缓冲字符输入流,以子结转字符为参数构造
DatagramSocket clientSocket = new DatagramSocket();//创建套接字
InetAddress ipaddress = InetAddress.getByName("localhost");//获取主机ip地址
byte[] sendData = new byte[1024];
byte[] recievedData = new byte[1024];
String sentence = infromuser.readLine();
sendData = sentence.getBytes();
DatagramPacket sendpacket = new DatagramPacket(sendData,sendData.length,ipaddress,9876);//生成数据包
clientSocket.send(sendpacket);
DatagramPacket recievedpacket = new DatagramPacket(recievedData,recievedData.length);//从主机接受数据包
clientSocket.receive(recievedpacket);
String modifiedsentence = new String(recievedpacket.getData());
System.out.println(modifiedsentence);
clientSocket.close();
}
}
package UDP;
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
DatagramSocket serversocket = new DatagramSocket(9876);
byte[] recievedata = new byte[1024];
byte[] senddata = new byte[1024];
while(true)
{
DatagramPacket recievedpPacket = new DatagramPacket(recievedata,recievedata.length);
serversocket.receive(recievedpPacket);
String sentence = new String(recievedpPacket.getData());
InetAddress ipaddress = recievedpPacket.getAddress();
int port = recievedpPacket.getPort();
String capitalizedsentence = sentence.toUpperCase();
senddata = capitalizedsentence.getBytes();
DatagramPacket sendpacket = new DatagramPacket(senddata, senddata.length,ipaddress,port);
serversocket.send(sendpacket);
}
}
}
< 二> TCP socket
package socket;
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) throws IOException {
String clientSentence;
String capitalizedSentence;
ServerSocket welcomeSocket = new ServerSocket(6789);
while (true)
{
Socket connectionSocket = welcomeSocket.accept();
BufferedReader infromclient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
System.out.println("accept \n");
DataOutputStream outToclient = new DataOutputStream(connectionSocket.getOutputStream());
clientSentence =infromclient.readLine();
System.out.println("get client string "+ clientSentence+"\n");
capitalizedSentence = clientSentence.toUpperCase()+"\n";
outToclient.writeBytes(capitalizedSentence);
}
}
}
package socket;
import java.io.*;
import java.net.*;
public class CLient0 {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String hostname = "localhost";
int portNUM = 6789;
String sentence ;
String modifiedStentence;
BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));
Socket clientsocket = new Socket(hostname,portNUM);
BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientsocket.getInputStream()));
DataOutputStream outToserver = new DataOutputStream(clientsocket.getOutputStream());
sentence = inFromUser.readLine();
outToserver.writeBytes(sentence+"\n");
modifiedStentence = inFromServer.readLine();
System.out.println("FROM SERVER:"+modifiedStentence);
clientsocket.close();
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- java TCP&UDP socket编程示例
- Java---Socket编程UDP/TCP
- Java---Socket编程UDP/TCP
- Java---Socket编程UDP/TCP
- Java---Socket编程UDP/TCP
- Java socket编程--TCP UDP
- Java---Socket编程UDP/TCP
- Java---Socket编程UDP/TCP
- Java Socket编程 Tcp/Udp
- Socket网络编程TCP、UDP示例
- TCP/UDP的Socket编程示例
- Java TCP/UDP socket 编程流程总结
- Java TCP/UDP socket 编程流程总结
- Java TCP/UDP socket 编程流程总结
- Java TCP/UDP socket 编程流程总结
- Java TCP/UDP socket 编程流程总结
- Java TCP/UDP socket 编程流程总结
- Java TCP/UDP socket 编程流程总结
- android中.9.png图片
- win8.1下IIS网站打不开的问题
- hdu1232
- CGRect常见用法和几个 CGRect 函数
- windows8/win8.1下AMD显卡驱动无法安装的解决方法
- java TCP&UDP socket编程示例
- GDI+可以放弃了,效率不敢用
- 黑马程序员————java基础————IO流常用流
- hdu1233
- Introduction to In-App Purchases in iOS 6 Tutorial
- Delphi中ADO存取效率的探讨
- HDU 5245 Joyful
- win8下面邮政储蓄网银跳转404
- hdu1235