• 大小: 8KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-05-23
  • 语言: Java
  • 标签: socket  tcp/ip  报文  

资源简介

实现了java socket编程基于tcp/ip协议的简单服务端,客户端通信,用于发送报文,接收解析报文。

资源截图

代码片段和文件信息

package socket;

import java.io.*;
import java.net.*;
import java.util.*;
/**
 * 客户端
 * @author lw
 *
 */
public class Client {
private Socket client;
//报头标识字段
public static Integer RequestID=88;//长度为4字节
public static Integer SequenceID=99;
public static Integer PacketLength=0;

public Client() throws UnknownHostException IOException {
client = new Socket(“127.0.0.1“ 7777);
BufferedOutputStream bout=new BufferedOutputStream(client.getOutputStream()); 

//将报体字符串转为字节流发送                   
String message=“你好,java“;    
byte[] messages = message.getBytes(“utf-8“);   

PacketLength=4+4+4+messages.length;
//字段转换
byte[] bRequestID=SocketUtil.intToByte(RequestID);
byte[] bSequenceID=SocketUtil.intToByte(SequenceID);
byte[] bPacketLength=SocketUtil.intToByte(PacketLength);
System.out.println(“报文长度:“+PacketLength);
//合并字节数组
List header = new ArrayList();
header.add(bPacketLength);
header.add(bRequestID);
header.add(bSequenceID);
byte[] headerByte=SocketUtil.sysCopy(header);
List body = new ArrayList();
body.add(headerByte);
body.add(messages);
byte[] bytes=SocketUtil.sysCopy(body);

System.out.println(“--------开始往服务端写数据-------“);          
bout.write(bytes);      
bout.flush();    
bout.close();
client.close();
System.out.println(“--------数据写入完毕------“);
}

public static void main(String[] args) {
try {
new Client();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        301  2012-11-13 23:47  socket\.classpath

     文件        382  2012-11-13 23:47  socket\.project

     文件         88  2012-11-14 10:08  socket\.settings\org.eclipse.core.resources.prefs

     文件        629  2012-11-13 23:47  socket\.settings\org.eclipse.jdt.core.prefs

     文件       2648  2012-11-16 11:35  socket\bin\socket\Client.class

     文件       2686  2012-11-16 11:34  socket\bin\socket\Server.class

     文件       1631  2012-11-16 11:35  socket\bin\socket\SocketUtil.class

     文件       1740  2012-11-16 11:35  socket\src\socket\Client.java

     文件       2036  2012-11-16 11:34  socket\src\socket\Server.java

     文件       1765  2012-11-16 11:35  socket\src\socket\SocketUtil.java

     目录          0  2012-11-14 09:12  socket\bin\socket

     目录          0  2012-11-14 09:12  socket\src\socket

     目录          0  2012-11-14 10:08  socket\.settings

     目录          0  2012-11-14 09:12  socket\bin

     目录          0  2012-11-14 09:12  socket\src

     目录          0  2012-11-14 09:12  socket

----------- ---------  ---------- -----  ----

                13906                    16


评论

共有 条评论