精华内容
下载资源
问答
  • 两个html文件,一开始写了一个引入...都可直接打开使用,进行大写带下划线的报文直接转成驼峰形式的报文,以及驼峰形式转换成大写带下划线的报文,json格式的报文转换key值,value值不变,不是json格式将会无差别转换
  • 利用matlab脚本将Excel文件can协议转换成dbc. 如有问题请联系
  • 基于SCD的goose/sv报文收发工具,报文监控、模拟、回放等操作
  • implement a python app which can covert hex raw packet data to k12 file. Wireshark can open the k12 file and parse the packet content. #########1.txt########### 09002b00 00050020 8fca980d 81000....

    implement a python app which can covert hex raw packet data to k12 file.

    Wireshark can open the k12 file and parse the packet content.

     

    #########1.txt###########

    09002b00 00050020 8fca980d 8100000a 05d4fefe 03831401 06110100 03020110
    11011011 005a05d1 0081018e 01040349 0001f00f 01008000 04022022 02202200
    800006d3 03000000 e810fe80 00000000 00000220 8ffffeca 980d08ff 00000000
    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

     

    # ecoding=utf-8
    import re
    def pktfile_raw_2_k12(infile, outfile):
        infile = open(ifn,'rb')
        outfile = open(ofn,'wb')
        all = "" 
        for eachline in infile.readlines():
            #去掉文本行里面的空格 换行 \t(其他有要去除的也可以放到' \r\n\t'里面)
            lines = filter(lambda ch: ch not in ' \r\n\t', eachline)
            all=all+lines 
        # 写出正则表达式 任意2个字符
        pattern = re.compile('.{2}')
        # findall是找到所有的字符,再在字符中添加'|',当然你想添加其他东西当然也可以
        modified_pkt_line = '|'.join(pattern.findall(all))
        modified_pkt_line = '|'+ modified_pkt_line + '|'
        k12_headline = """
        +---------+---------------+----------+
        02:43:09,047,121   ETHER
        |0   """
        k12_pkt_string = k12_headline + modified_pkt_line + "\r\n"+"\r\n"
        outfile.write(k12_pkt_string) 
        infile.close
        outfile.close
    
    ifn = r"1.txt"
    ofn = r"1_k12.txt"
    pktfile_raw_2_k12(ifn, ofn)

     

    #########1_k12.txt###########

    
    +---------+---------------+----------+
    02:43:09,047,121   ETHER
    |0   |09|00|2b|00|00|05|00|20|8f|ca|98|0d|81|00|00|0a|05|d4|fe|fe|03|83|14|01|06|11|01|00|03|02|01|10|11|01|10|11|00|5a|05|d1|00|81|01|8e|01|04|03|49|00|01|f0|0f|01|00|80|00|04|02|20|22|02|20|22|00|80|00|06|d3|03|00|00|00|e8|10|fe|80|00|00|00|00|00|00|02|20|8f|ff|fe|ca|98|0d|08|ff|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|
    
    
    

     

     

    展开全文
  • 该文档主要详细描述了如何利用Dom4j技术、cglib技术,将xml存到数据库,具有一定的灵活性,例如表都不需要建,字段属性这些都是根据xml文件里的属性和值来确定的,当然这不是最精简的,还可以改进,相信自己用了之后...
  • NULL 博文链接:https://zw7534313.iteye.com/blog/2422138
  • 将本地xml报文文件转换为String并在后台输出 public String transfor() throws Exception{ try{ File file input = new File(“…/…/fileName.xml”); DocumentBuilderFactory dbFactory = ...

    将本地xml报文文件转换为String并在后台输出

    使用org.w3cdom.Document相关jar包

    public String transfor() throws Exception{
    try{
    File file input = new File(“…/…/fileName.xml”);
    DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder dBuilder =dbFactory.newDocumentBuilder();
    Document doc = dBuilder.parse(fileinput);

    	DOMSource domSource = new DOMSource(doc);
    	StringWriter writer = new StringWriter();
    	TransformerFactory tf = TransformerFactory.newInstance();
    	transformer.transform(domSource,result);
    	System.out.println(writer.toString());
    	return writer.toString();
    	}catch(Exception e){
    	e.printStackTrace();
    	return null;
    	}
    

    }

    展开全文
  • 报文与XML之间的转换

    2014-04-02 15:30:25
    <fileflag></fileflag> 0 短报文 1 文件 <filename></filename> <CLZ>00000000002013020513173601555049 <END>20130118|103290032030|00000000002013020513173601555049|03492300040004835|102290068892|...
  • mina的高级使用,mina文件图片传送,
  • 文本格式报文转换为pcap文件的方法

    千次阅读 2017-12-31 15:00:35
    偶然的一个需求,需要用文本文件中的码流生成pcap,然后用wireshark查看,网上都是讲如何解码pcap,于是按照别人写的,反向写了一个函数,来完成这个功能呢; 1、由于文件中有IP码流,所以只需要构造pcap文件头,...

    偶然的一个需求,需要用文本文件中的码流生成pcap,然后用wireshark查看,网上都是讲如何解码pcap,于是按照别人写的,反向写了一个函数,来完成这个功能呢;

    文本文件里村了时间戳和码流,但是都是文本格式,程序的主要功能是从文本中找到时间戳和码流,并转换为十六进制,写入pcap文件。

    1、由于文件中有IP码流,所以只需要构造pcap文件头,数据包头和以太网帧头:

    //pacp文件头结构体


    struct pcap_file_header
    {
        bpf_u_int32 magic;       /* 0xa1b2c3d4 */
    u_short version_major;   /* magjor Version 2 */
    u_short version_minor;   /* magjor Version 4 */
    bpf_int32 thiszone;      /* gmt to local correction */
    bpf_u_int32 sigfigs;     /* accuracy of timestamps */
    bpf_u_int32 snaplen;     /* max length saved portion of each pkt */
    bpf_u_int32 linktype;    /* data link type (LINKTYPE_*) */
    };

    //时间戳
    struct time_val
    {
    long tv_sec;         /* seconds 含义同 time_t 对象的值 */
    long tv_usec;        /* and microseconds */
    };


    //pcap数据包头结构体
    struct pcap_pkthdr
    {
    struct time_val ts;  /* time stamp */
    bpf_u_int32 caplen; /* length of portion present */
    bpf_u_int32 len;    /* length this packet (off wire) */
    };


    //数据帧头
    typedef struct FramHeader_t
    { //Pcap捕获的数据帧头
    u_int8 DstMAC[6]; //目的MAC地址
    u_int8 SrcMAC[6]; //源MAC地址
    u_short FrameType;    //帧类型
    } FramHeader_t;

    2、pcap文件的pcap文件头都长一个样,照着格式填就行了,数据包头需要填对时间戳和包长

    //使用time.h计算时间戳很靠谱,夏时令为0,月份要减1,年要减1900,wday和yday
    可以不填
    DWORD calcTimeNew(BYTE *ptTime)
    {
    //time_t time;
    tm tm;
    t m.tm_year= (ptTime[0]*1000)+(ptTime[1]*100)+(ptTime[2]*10)+ptTime[3]-1900;
    tm.tm_mon= ptTime[4]*10+ptTime[5]-1;
    tm.tm_mday= (ptTime[6]*10+ptTime[7]);
    tm.tm_hour= (ptTime[8]*10+ptTime[9]);
    tm.tm_min= (ptTime[10]*10+ptTime[11]);
    tm.tm_sec= (ptTime[12]*10+ptTime[13]);
    tm.tm_isdst= 0;
    //time= mktime(&tm);
    //cout<<ctime(&time)<<endl;
    return (DWORD)(mktime(&tm));
    }

    //把数组格式转成BCD格式

    void convertByte(BYTE* pb,int m,BYTE *abtemp)
    {
    for(int i =0,j=0;i<m;i+=2,j++)
    abtemp[j] = (((pb[i]<<4)&0xF0)|(pb[i+1]&0x0F));
    }

    //包长用这个数一下

    while(!file.eof())
    {
    getline(file,str);
    if (str.size()<3) //避免读空行 
    {
    continue;  
    }  
    if(pcstreamB=findsubstr4RawStream(str.c_str(),acstream))//找到“09 00 34 00 35”的报文首地址位置,对应  水平定位符号和45(IP头)
    {
    int n=0,m=0,p=0;
    //找到本行末尾
    while((*(pcstreamB+n)-'\r')&&(*(pcstreamB+n)-'\n'))//算出报文首地址到本行结尾的字节数
    {
    n++;
    }
    }
    }

    //由于文件中每行的末尾是换行回车,所以不能用\0作为结束符,需要用\r \n作为结束符
    char *findsubstr4RawStream(const char *str1, const char *str2)
    {
    char *cp = (char*)str1;
    char *s1, *s2;
    while ((*cp-'\r')&&(*cp-'\n'))
    {
    s1 = cp;
    s2 = (char *)str2;
    while ((*s1-'\r')&&(*s1-'\n') && (*s2-']') && !(*s1 - *s2))
    s1++, s2++;
    if (!(*s2-']'))
    return(cp);
    cp++;
    }
    return(NULL);
    }

    //由于采用fwrite或fprintf或fputs向文件写入CHAR或BYTE时,\r会被替换成\r\n,即0x0A会被替换为0x0A 0x0D,所以需要用file.open带wb参数
    void WriteByte2File(FILE *pf,BYTE *pbArray,int iWriteNum)
    {
    for(;iloop<iWriteNum;iloop++)
    {
    fwrite(&pbArray[iloop],sizeof(BYTE),1,pf);

    }
    }

    展开全文
  • 常用报文的解析与相互转换

    千次阅读 2019-02-22 21:19:38
    常用报文的解析与相互转换

    分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

                   

    常用报文的解析与相互转换

    1、报文定义

    报文是网络中信息交换的载体,是按约定格式组织好的信息流,报文格式可以是国际公约式,如TCP/IP协议报文;也可以是特定行业的报文,如8583金融报文;也可以是自由报文格式,只要遵循双方制定的标准,怎么定义都可以。

    发送者将信息按照双方或者国际公约约定的格式发送给接收文,接收方再按双方约定的格式或国际公约组织并取出信息,这叫报文解析;也是报文操作的一个必须步骤,这体现了报文最终意义。

    2、报文类型

    报文的类型是有很多种的,常用的有定长报文、键值报文、XML报语言及二进制报文等,以下就对这几种报文做相应的介绍,并配简单的示例。
       

    2.1 定长报文


       

    2.2 键值报文

       

    2.3 XML报文

       

    2.4 二进制报文

     

    3、报文之间的相互转换

    3.1 定长报文与键值报文之间的转换

    3.2 键值报文与XML报文之间的转换

    3.3 定长报文与XML报文之间的转换

     

     

    以上是目录,先列到这里,后期我会一步步补充,补充好了就会加上链接

    本文出自:冯立彬的博客




               

    分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

    展开全文
  • 原文地址:https://www.jianshu.com/p/37232e1ceba1
  • 该软件的功能是:将天宝接收机原始格式的文件转换为标准RINEX格式的文件,是我网上找了好久找到的,当时是使用积分下载的,考虑到很多人可能需要,所以上传到网上供大家学习使用,感谢原始作者的创造,本文件只供...
  • try { // 通过一个文件输出流,就可以写到相应的文件中,此处用的是绝对路径 out = new FileWriter(new File("D:/new_works/freeMarker/src/static/" + outFile)); Template temp = this.getTemplate(name); temp....
  • http接口,向远程服务器发送xml格式报文,发送成功后接收返回报文转换成前端需要的json格式 需求样例: 请求路径: http://url:port/接口名 请求报文: <?xml version="1.0" encoding="utf-8" standalone...
  • SOAP报文转成JAVA对象

    千次阅读 2019-10-03 03:35:07
    在今天以前我还没有用过代码解析过SOAP报文,更别提转成JAVA对象了,今天的任务中报文这个模样的,(为防止数据信息,以下数据我故意打乱了防止泄露什么信息.) <?xml version="1.0" encoding="UTF-8"?> <...
  • CAN总线CSV格式报文转ASC格式报文

    千次阅读 2020-05-29 11:26:08
    CAN总线报文- CSVASC格式 CANoe PcanExplorer
  • 下面小编就为大家分享一篇python实现csv格式文件转为asc格式文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 作为网关,有些时候可能报文的结构并不符合前端或者某些服务的需求,或者因为某些原因,其他服务修改报文结构特别麻烦、或者需要修改的地方特别多,这个时候就需要走网关单独转换一次。 ## 实现 话不多说,直接上...
  • 将xml串转换成Map类型,如果有重复节点,自动转换为list类型存储,所以最终转换并非绝对Map
  • 读取xml文件转换为json文件

    千次阅读 2017-11-29 14:39:48
    在平时经常遇到需要把xml文件转换为json格式数据的需求,这里将实现读取指定目录的xml文件并吧内容转换为json格式然后输出到指定目录。项目采用spring boot项目,下面是实现的主要步骤:一,创建一个spring boot项目...
  • POS通讯报文解析工具,支持标准及非标准8583报文解析,可配置第三方支付平台8583报文协议解析。
  • 把xml文件转成一行字符串
  • 将 .json 格式 转换成 .xml格式

    千次阅读 热门讨论 2019-08-30 21:30:33
    1. 转换前的 .json 格式文件的内容: json 是一个字典,具体内容看下面这个链接: https://blog.csdn.net/weixin_42419002/article/details/100159408 2. 转换后的 .xml 格式文件的内容: <annotation> <...
  • socket传输各种交易报文,服务器端传输文件,客户端接收到后可随意转成文件或者是byte数组。 希望对大家有所帮助,谢谢。
  • 报文格式-PCAP文件格式详解

    千次阅读 2019-12-17 20:06:13
    分析pcap文件格式,在wireshark中显示了pcap文件头的一些信息
  • java读取xml文件转换成对象,并进行修改
  • http post 文件报文

    2019-03-04 10:38:04
    假设接受文件的网页程序位于 http://192.168.29.65/upload_file/UploadFile.假设我们要发送一个图片文件文件名为“kn.jpg”, 首先客户端链接 192.168.24.56 后, 应该发送如下http 请求:  POST/logsys/home/...
  • 本人写的电力行业报文解析工具,单文件免安装,随存随用,详细解析到每个字节。支持如下规约: 1.698.45报文解析;2.南网规约报文解析;3.376.2报文解析(茜茜写的);4.376.1规约帧结构解析;5.645.07表规约帧结构解析...
  • smooks是一种强大的java数据转换框架。一些xml报文你可能需要装换其标签头,或者把标签的属性转换元素,或者想把csv格式的文件转换成xml格式,smooks框架是你的选择。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 77,067
精华内容 30,826
关键字:

文件转换成报文