1078-优化编码

This commit is contained in:
648540858
2024-05-02 06:25:09 +08:00
parent 734f0c7e04
commit 0fc0cd6e41
10 changed files with 57 additions and 37 deletions

View File

@@ -69,7 +69,7 @@ public class J8103 extends Rs {
case "String":
field.setAccessible(true);
String stringVal = (String)field.get(config);
buffer.writeByte(stringVal.getBytes().length);
buffer.writeByte(stringVal.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(stringVal, Charset.forName("GBK"));
continue;
case "Integer":

View File

@@ -32,9 +32,13 @@ public class J8401 extends Rs {
public ByteBuf encode() {
ByteBuf buffer = Unpooled.buffer();
buffer.writeByte(type);
buffer.writeByte(phoneBookContactList.size());
for (JTPhoneBookContact jtPhoneBookContact : phoneBookContactList) {
buffer.writeBytes(jtPhoneBookContact.encode());
if (phoneBookContactList != null && !phoneBookContactList.isEmpty()) {
buffer.writeByte(phoneBookContactList.size());
for (JTPhoneBookContact jtPhoneBookContact : phoneBookContactList) {
buffer.writeBytes(jtPhoneBookContact.encode());
}
}else {
buffer.writeByte(0);
}
return buffer;
}

View File

@@ -42,7 +42,7 @@ public class J9101 extends Rs {
@Override
public ByteBuf encode() {
ByteBuf buffer = Unpooled.buffer();
buffer.writeByte(ip.getBytes().length);
buffer.writeByte(ip.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(ip, Charset.forName("GBK"));
buffer.writeShort(tcpPort);
buffer.writeShort(udpPort);

View File

@@ -6,6 +6,8 @@ import io.netty.buffer.ByteBufUtil;
import io.netty.buffer.Unpooled;
import io.netty.util.CharsetUtil;
import java.nio.charset.Charset;
/**
* 回放请求
*
@@ -51,8 +53,8 @@ public class J9201 extends Rs {
@Override
public ByteBuf encode() {
ByteBuf buffer = Unpooled.buffer();
buffer.writeByte(ip.getBytes().length);
buffer.writeCharSequence(ip, CharsetUtil.UTF_8);
buffer.writeByte(ip.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(ip, Charset.forName("GBK"));
buffer.writeShort(tcpPort);
buffer.writeShort(udpPort);
buffer.writeByte(channel);

View File

@@ -6,6 +6,8 @@ import io.netty.buffer.ByteBufUtil;
import io.netty.buffer.Unpooled;
import io.netty.util.CharsetUtil;
import java.nio.charset.Charset;
/**
* 文件上传指令
*
@@ -58,15 +60,15 @@ public class J9206 extends Rs {
public ByteBuf encode() {
ByteBuf buffer = Unpooled.buffer();
buffer.writeByte(serverIp.getBytes().length);
buffer.writeCharSequence(serverIp, CharsetUtil.UTF_8);
buffer.writeByte(serverIp.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(serverIp, Charset.forName("GBK"));
buffer.writeByte(port);
buffer.writeByte(user.getBytes().length);
buffer.writeCharSequence(user, CharsetUtil.UTF_8);
buffer.writeByte(password.getBytes().length);
buffer.writeCharSequence(password, CharsetUtil.UTF_8);
buffer.writeByte(path.getBytes().length);
buffer.writeCharSequence(path, CharsetUtil.UTF_8);
buffer.writeByte(user.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(user, Charset.forName("GBK"));
buffer.writeByte(password.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(password, Charset.forName("GBK"));
buffer.writeByte(path.getBytes(Charset.forName("GBK")).length);
buffer.writeCharSequence(path, Charset.forName("GBK"));
buffer.writeByte(channelId);
buffer.writeBytes(ByteBufUtil.decodeHexDump(startTime));
buffer.writeBytes(ByteBufUtil.decodeHexDump(endTime));