报文解析 parse2 16-关于parse2报文转换的问题

问题描述

关于parse2报文转换的问题
我在用parse2 org.parse2.aparse.jar包生成的代码进行报文转换时,遇到了解析的问题,解析过程正常不报错,但是解析出来的结果,不符合自己的要求,烦请各位大神指点:
具体情况如下: 这个是直接报文转换成XML的时候的格式,但是实际上的需要的是这样的格式:
就是在报文转换成XML格式的时候,那些数字都换行了,成一个个的保存了,正常情况下应该为1行保存,应该是一个属性的值,而不是一个属性数组。
这种问题的出现主要是版本问题造成的,报文的格式为FWB12的时候是正常的,当报文格式为FWB16的时候,才出现的这种问题。
网上没有什么资料,实在是搜索不到,在此寻求各位大神的帮助

解决方案

问题已经找到:在parse2进行解析的时候,会调用很多的解析规则,在默认的情况下,会将这个报文的出了字段名称完整解析之外,其他的就是默认的会将每一个的字符拆开单独存放,并以数组类型展示,这就造成了原本应该是一个字符串的,被拆成了一个数组;如下图
这个时候就会每次解析,给你添加一个头,然后将一个数字字符串,一个个的for循环列出,就造成了上面的问题。

主要是这个parse2用的人比较少,网上很难看到这些东西,别说问题了,直接搜还很难搜到的。不过,幸好解决了

时间: 2024-11-03 21:47:10

报文解析 parse2 16-关于parse2报文转换的问题的相关文章

报文解析 16进制转换成2进制

问题描述 报文解析 16进制转换成2进制 请教大神!!报文解析怎样将char数组类型的里面值(16进制)转换成2进制,我试了好几次.乱码啊.开发工具是VS2010,控制台应用程序.不清楚的话我可以截图,各位大牛.今天下班之前要交.在线等

java报文解析!求大神指导!

问题描述 java报文解析!求大神指导! 大家帮我解析一下报文吧!我用的是UDP通信拿到数据,数据的类型是这样的S5W1449!p1r!p1r003B1s!S6WGGG00!p2r!p2r00003!p1r!p1r003B1s! 第0~2位为p1r或p2r,第3~6位为对应侧(p1r或p2r)的点位,第7位为状态位第8位为CRC校验位(将以上待发送的8位 异或)第9位为!结束位. 比如p1r!p1r003B1s!,我要拿到点位003B,要把它转化成十进制显示在我的界面画图!我要怎么解析报文!能写

java xml报文解析,把name名相同的解析成一个数组存到map集合

问题描述 java xml报文解析,把name名相同的解析成一个数组存到map集合 <?xml version="1.0" encoding="GBK"?> <request version="1.0"> <query> <filed name="FundOID" type="String"></filed> <filed name=&quo

iec61860-IEC61850 smv报文解析(9-2标准)

问题描述 IEC61850 smv报文解析(9-2标准) http://hi.baidu.com/ucells/item/eaa5761becf104426826bbf5 这里有人做了解析,有个问题: svID: LN1102_MU1_5810MUnn02 这个是怎么得到的?

java modbus TCP/IP 报文解析成真实数据

问题描述 java modbus TCP/IP 报文解析成真实数据 java modbus TCP/IP 怎么解析modbus报文成为真是数据

python UDP发送16进制报文 新手求教 如何拼接报文

问题描述 python UDP发送16进制报文 新手求教 如何拼接报文 报文内容为 : ID + Action 解决方案 为啥要拼接呀?没看出需要拼接嘛?

java 报文的解析,发送给后台,报报文解析出错

问题描述 java中,一般报请求报文解析失败,是什么原因,是我的解析有问题?还是什么? 解决方案

进制转换-java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制

问题描述 java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制 java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制,但是老是运行出错.大神们能不能给个小例子解释一下,谢谢 解决方案 http://blog.csdn.net/vanezuo/article/details/6556768 解决方案二: 使用函数啊,你找一下,Java有相应的函数能做到 解决方案三: 如果你的程序出错,你贴出你的程序才知道. 也可以参考我给你的

ios-IOS 如何把16进制字符串转换成byte 求各位大神 最好能有代码

问题描述 IOS 如何把16进制字符串转换成byte 求各位大神 最好能有代码 IOS 如何把16进制字符串转换成byte?求各位大神 最好能有代码 解决方案 字符串由字符组成,每个字符都占用一定的字节,我记得是4还是多少,这是c语言底层的算法,应该还有其他算法

cxf-CXF构建的 Webservice, 客户端怎么获取发送到服务的报文和服务端返回的报文。

问题描述 CXF构建的 Webservice, 客户端怎么获取发送到服务的报文和服务端返回的报文. CXF构建的 Webservice, 客户端怎么获取发送到服务的报文和服务端返回的报文. 解决方案 http://blog.csdn.net/xzknet/article/details/17918343