java服务器和 linux c客户端采用udp协议互相通信,最关键的点是数据结构的统一。比如说,在c中一个char型 是8bit,在java中,char 是16bit,所以c和java的char类型不能直接互相转换。在本例程中,c的char 类型和 java的byte类型,两个数据类型都是8bit,这样就保证了数据正确传输的基本条件之一。
java服务器代码如下:
import java.io.*;
import java.lang.*;
import java.net.*;
public class udpserver
{
private DatagramSocket server_sock;
private DatagramPacket pac;
private byte recv_buffer[];
private String recv_string;
public udpserver()
{
Init();
}
public void Init()
{
try
{
//监听端口设为1234
server_sock=new DatagramSocket(1234);
recv_buffer=new byte[1024];//接收缓冲区,byte型
pac=new DatagramPacket(recv_buffer,recv_buffer.length);//构造一个packet
recv_string="&#