dataserver.java
来自「JAVA的一些基础教程」· Java 代码 · 共 50 行
JAVA
50 行
import java.io.*;
import java.net.*;
class Person{
int 年龄;
boolean 性别;
String 姓名;
public Person(String name,int age, boolean gender){
年龄= age;
性别 = gender;
姓名 = name;
}
public String toString(){
return "Person:"+姓名 + " 今年 " + 年龄 ;
}
}
class DataServer{
//先读取一个字符串,然后再读四个字节的整数,最后是布耳类型
public static void 解析数据(byte bytes[]) throws Exception{
ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
DataInputStream dis = new DataInputStream(bis);
String 姓名 = dis.readUTF();
int 年龄 = dis.readInt();
boolean 性别 =dis.readBoolean();
Person person = new Person(姓名,年龄,性别);
System.out.println("服务器收到一个Person对象" + person + "\n");
}
public static void main(String arg[]) throws Exception{
DatagramSocket 服务端 = new DatagramSocket(2000);
System.out.println("绑定本机器的2000端口");
byte bytes[] = new byte[1024];
DatagramPacket 客户端数据包 = new DatagramPacket(bytes,bytes.length);
//先读取一个字节的数据作为后面数据的长度
while(true){
服务端.receive(客户端数据包);
System.out.println("从机器:"+ 客户端数据包.getAddress() + " 端口 " + 客户端数据包.getPort());
System.out.println("接受到一个数据包");
byte 数据体[] = 客户端数据包.getData();
解析数据(数据体);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?