Java udp socketプログラミング
2324 ワード
本稿では,クライアントが文字列をサービス側に送信し,サービス側が大文字に変換してサービス側に送信することを実現した.
Javaはc++よりずっと簡単で、コードを直接見ればわかります.
サービス側
クライアント
Javaはc++よりずっと簡単で、コードを直接見ればわかります.
サービス側
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
import java.util.Arrays;
public class Main {
//
public static void main(String[] args) {
// write your code here
try {
// ,UDP
DatagramSocket socket = new DatagramSocket(9527);
byte[] message=new byte[1024];
while (true){
DatagramPacket packet = new DatagramPacket(message,1024);
socket.receive(packet);
InetAddress address = packet.getAddress();
int port = packet.getPort();
byte[] received = packet.getData();
int len = packet.getLength();
for(int i=0;i='a'&&received[i]<='z'){
received[i]= (byte) (received[i]-'a'+'A');
}
}
for(int i=0;i
クライアント
import java.io.IOException;
import java.net.*;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// write your code here
Scanner input = new Scanner(System.in);
try {
String words;
while (true) {
words=input.next();
DatagramSocket socket = new DatagramSocket();
byte[] message = words.getBytes();
//InetAddress IP
InetAddress address = InetAddress.getByName("127.0.0.1");
//DatagramPacket
//port
DatagramPacket packet = new DatagramPacket(message, message.length, address, 9527);
socket.send(packet);
System.out.println(" !");
socket.receive(packet);
int len = packet.getLength();
for(int i=0;i