<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[Heck's  Blog]]></title> 
<link>https://www.heckjj.com/index.php</link> 
<description><![CDATA[一瞬间的决定，往往可以改变很多，事实上，让自己成功的往往不是知识，是精神！ 如果你总是为自己找借口，那只好让成功推迟。执行力，今天！]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[Heck's  Blog]]></copyright>
<item>
<link>https://www.heckjj.com/post//</link>
<title><![CDATA[java socket报文通信之报文的封装]]></title> 
<author>Heck &lt;@hecks.tk&gt;</author>
<category><![CDATA[编程杂谈]]></category>
<pubDate>Wed, 14 Oct 2020 08:30:25 +0000</pubDate> 
<guid>https://www.heckjj.com/post//</guid> 
<description>
<![CDATA[ 
	<p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">昨天我们谈了怎么建立socket通信的服务端和客户端，今天我们就来谈一谈怎么封装报文。</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">什么是报文这里我就不在阐述了，不清楚的朋友可以自己去查资料。我们今天要谈的报文主要友以下几个部分组成：</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px"><span style="margin: 0px; padding: 0px; color: #ff0000"><strong style="margin: 0px; padding: 0px">3位同步校验位+8位报文长度+报文头+报文体+32位MD5校验位</strong></span></p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">基本格式如下：</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">0X110X120X1300000232&lt;?xml version=&quot;1.0&quot; encoding=&quot;GBK&quot;?&gt;&lt;ROOT&gt;&lt;Code&gt;0204&lt;/Code&gt;&lt;Date&gt;20141223&lt;/Date&gt;&lt;No&gt;141223010008152&lt;/No&gt;&lt;Code&gt;17010001&lt;/Code&gt;&lt;Name&gt;张三&lt;/Name&gt;&lt;/ROOT&gt;B251AB76B11114DB176023A0AA27A524</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">说明：</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">　　前面的0X110X120X13是3位16进制的同部位，这里为了大家理解，所以就以字符的形式谢出来了。00000232是报文长度。&lt;?xml version=&quot;1.0&quot; encoding=&quot;GBK&quot;?&gt;&lt;ROOT&gt;&lt;Code&gt;0204&lt;/Code&gt;&lt;Date&gt;20141223&lt;/Date&gt;&lt;No&gt;141223010008152&lt;/No&gt;&lt;Code&gt;17010001&lt;/Code&gt;&lt;/ROOT&gt;是报文头。即每个报文都包含的信息。&lt;Name&gt;张三&lt;/Name&gt;是报文体。B251AB76B11114DB176023A0AA27A524是加密数据。</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">关于如何将对象转换为xml格式的报文我将在下一篇写，这里主要是给大家如何将如上的这些字符串转化为字节以及如何发送和接收报文。</p><p style="margin: 10px auto; padding: 0px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; font-size: 14px">1.建立报文的对象</p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">public class SocketPacket &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px"><br /></span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;private String bodyLen;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;private String body;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;private String syncStr;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;private String md5;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String getBodyLen() &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return bodyLen;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String getBody() &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return body;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String getSyncStr() &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return syncStr;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String getMd5() &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return md5;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public void setBodyLen(String bodyLen) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.bodyLen = bodyLen;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public void setBody(String body) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.body = body;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public void setSyncStr(String syncStr) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.syncStr = syncStr;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public void setMd5(String md5) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.md5 = md5;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public byte[] getByteStream() throws UnsupportedEncodingException&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte[] bodyBytes = this.body.getBytes(&quot;gbk&quot;);//获得body的字节数组</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int bodyLength = bodyBytes.length;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int socketLength = 3+bodyLength+8+32;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte [] soc = new byte[socketLength];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//添加校验数据</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int index = 0;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;soc[0]=0x11;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;soc[1]=0x12;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;soc[2]=0x13;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index+=3;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//添加8位报文长度（我的博文中也有NumberFormat的用法介绍）</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NumberFormat numberFormat = NumberFormat.getNumberInstance();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;numberFormat.setMinimumIntegerDigits(8);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;numberFormat.setGroupingUsed(false);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte [] num = numberFormat.format(socketLength).getBytes();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int i = 0;i&lt;8;i++)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;soc[index++]= num[i];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//添加body内容</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int i = 0;i&lt;bodyLength;i++)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;soc[index++] = bodyBytes[i];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//添加md5校验码</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte [] md5Bytes = this.md5.getBytes();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; num.length; i++) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;soc[index++] = md5Bytes[i];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return soc;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;//字节装转报文string</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String getString(byte [] socketBytes)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String syncStr = this.bytesToString(socketBytes, 0, 3);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String socketLength = this.bytesToString(socketBytes, 3, 3+8);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String body = this.bytesToString(socketBytes, 3+8, socketBytes.length-32);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String md5 = this.bytesToString(socketBytes,socketBytes.length-32,socketBytes.length);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return syncStr+socketLength+body+md5;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;//将字节数组转化为string</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String bytesToString(byte [] bytes,int start,int end)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String str = &quot;&quot;;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(bytes.length&lt;end-start)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return str;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte [] bs = new byte[end-start];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int i = 0;i&lt;end-start;i++)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bs[i] = bytes[start++];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str = new String(bs);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return str;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public String toString()&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return this.syncStr+this.bodyLen+this.body+this.md5;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px"><br /></span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-size: 14px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif">2.封装发送和接收报文的工具类</span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">/**</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px"> * 报文发送</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px"> */</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">public class SockeUtil &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;Socket socket = null;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public SockeUtil(String ip,int port) throws UnknownHostException, IOException&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socket = new Socket(ip, port);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;//</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public SocketPacket sentSocket(SocketPacket socketPacket) throws UnsupportedEncodingException, IOException&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SocketPacket sPacket = new SocketPacket();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OutputStream output=null;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InputStream input =null;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 同步字符串(3byte)</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte[] sync = null; //</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte[] bodyLen = null; // 8位长度</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte[] body = null; // 内容</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte[] md5 = null;&nbsp;&nbsp;// MD5</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output = socket.getOutputStream();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//写数据发送报文</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output.write(socketPacket.getByteStream());</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//获得服务端返回的数据</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;input = socket.getInputStream();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sync = this.streamToBytes(input,3);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bodyLen = this.streamToBytes(input, 8);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String lenString = new String(bodyLen);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int len = Integer.valueOf(lenString);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;body = this.streamToBytes(input, len);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;md5 = this.streamToBytes(input, 32);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sPacket.setSyncStr(new String(sync,Charset.forName(&quot;gbk&quot;)));</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socketPacket.setBodyLen(new String(bodyLen,Charset.forName(&quot;gbk&quot;)));</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socketPacket.setBody(new String(body,Charset.forName(&quot;gbk&quot;)));</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socketPacket.setMd5(new String(md5,Charset.forName(&quot;gbk&quot;)));</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return sPacket;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;public byte[] streamToBytes(InputStream inputStream,int len)&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/**</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * inputStream.read(要复制到得字节数组,起始位置下标,要复制的长度)</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * 该方法读取后input的下标会自动的后移，下次读取的时候还是从上次读取后移动到的下标开始读取</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * 所以每次读取后就不需要在制定起始的下标了</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte [] bytes= new byte[len];</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inputStream.read(bytes, 0, len);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; catch (IOException e) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// TODO Auto-generated catch block</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return bytes;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-size: 14px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif">3.在封装一个调用报文发送的类：</span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">public String socket(SocketPackage socketPackage) throws UnsupportedEncodingException&#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SocketClient socketClient=null;;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;socketClient = new SocketClient(ip,端口);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; catch (UnknownHostException e) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log.error(&quot;socket链接异常,链接信息：&quot;+ip+端口);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; catch (IOException e) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log.error(&quot;socket IO异常&quot;);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SocketPackage s = null;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s = socketClient.sendMsg(socketPackage);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; catch (Exception e) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log.error(&quot;socket发送消息异常，发送信息：&quot;+new String(socketPackage.getByteStream(),&quot;GBK&quot;));</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; catch (UnsupportedEncodingException e1) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log.error(&quot;socket将socketPackage转为字符串异常，socketPackage信息：&quot;+socketPackage.getByteStream());</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e1.printStackTrace();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String result = &quot;&quot;;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; result = new&nbsp;&nbsp;String(s.getStream(),&quot;GBK&quot;);</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; catch (UnsupportedEncodingException e) &#123;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log.error(&quot;socket将socketPackage转为字符串异常，socketPackage信息：&quot;+socketPackage.getByteStream());</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return result ;</span></span></p><p style="margin: 10px auto; padding: 0px"></p><p style="margin: 10px auto; padding: 0px"><span style="font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"><span style="font-size: 14px">&nbsp;&nbsp;&#125;</span></span></p><p style="margin: 10px auto; padding: 0px"><span style="font-size: 14px; font-family: &quot;PingFang SC&quot;, &quot;Microsoft YaHei&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif"> 这样我们就能发送报文和接收报文了！赶紧试一下吧!^_^</span></p>
]]>
</description>
</item><item>
<link>https://www.heckjj.com/post//#blogcomment</link>
<title><![CDATA[[评论] java socket报文通信之报文的封装]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://www.heckjj.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>