报文格式【定长报文】

定长报文简单介绍

       定长报文,是眼下使用最广泛的报文。同一时候比較简单的报文格式。

理解起来也较为简单,但定长报文也有自身的局限性。

当中最大的问题在于,假设定义域的长度须要加长,这时候相关的配置与程序代码都须要进行对应的改变,所以维护非常不方便。
       定长报文。就是使用固定的长度来表示一个信息。

本报文格式常见于金融银行业,所以以银行开户场景为例说明,比如银行柜面开户时。须要记录开户人的姓名。假定username用30个字节来表示。这样应该就能够满足国人的须要,15个汉字长度。当然我们这里也有开户时间的须要,那我们假定为8位长度,格式为"YYYYMMDD"。这样我们在记录这些数据是能够使用30+8(38)长度报文。可是这样问题就来,假设我们后期改变了时间的格式“YYYY-MM-DD”,这样我们就不仅要调整定长的长度,还有更改程序去生成指定时间格式。

举例包括两个域,假设定长报文含有多个域,而且后期更改的域格式有非常多,这样的情况就凸显了定长报文的局限性。


【转载使用。请注明出处:http://blog.csdn.net/mahoking

定长报文案例


简单定长报文

        下面是简单报文演示样例,以银行开户为例。本例选举了些主要的信息,演示样例就可以。

 

       依据上表的信息我们就拼组报文了。报文例如以下:
“77778710001上山打老虎         12345678912345678920141022”
将这个报文发送给后台程序的时候,后台程序就依据以上表格中定义的标准。将接收到的报文进行解析,然后再进行处理。

 

带变长域的定长报文

 

       假定在20140811。发生交易金额为789.80和20141012,发生交易金额为1489.80,此时得到例如以下的报文:
“77778710001 02014081178980           20141012148980          ”
这样通过变长域,能够循环的输出反复字段,这样服务端也能够循环展示获取到的信息。

演示样例程序


此部分待定。

 

 

 

【转载使用,请注明出处:http://blog.csdn.net/mahoking

 

原文地址:https://www.cnblogs.com/lxjshuju/p/6970130.html