定長報文簡單介紹
定長報文,是眼下使用最廣泛的報文。同一時候比較簡單的報文格式。
理解起來也較為簡單,但定長報文也有自身的局限性。
當中最大的問題在於,假設定義域的長度須要加長,這時候相關的配置與程序代碼都須要進行對應的改變,所以維護非常不方便。
定長報文。就是使用固定的長度來表示一個信息。
本報文格式常見於金融銀行業,所以以銀行開戶場景為例說明,比如銀行櫃面開戶時。須要記錄開戶人的姓名。假定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】