Skip to content
nuclearg edited this page Sep 16, 2014 · 4 revisions

作为示例,我们统一使用下面的报文:

+ # {}
|-- aaa = a {}
|-- bbb = b {}
|-[]ccc {}
| |-- 0 = 111 {}
| |-- 1 = 222 {}
|-+ ddd {}
| |-- eee = e {}
| |-- fff = f {}
| |-+ ggg {}
| | |-- hhh = h {}
|-[]iii {}
| |-+ 0 {}
| | |-- jjj = j1 {}
| | |-- kkk = k1 {}
| |-+ 1 {}
| | |-- jjj = j2 {}
| | |-- kkk = k2 {}
| |-+ 2 {}
| | |-- jjj = j3 {}
| | |-- kkk = k3 {}

对应的xml形式如下:

<?xml version="1.0"?>
<document>
    <field name="aaa">a</field>
    <field name="bbb">b</field>
    <array name="ccc">
        <prototype>
            <field name="__prototype" />
        </prototype>
        <field name="0">111</field>
        <field name="1">222</field>
    </array>
    <struct name="ddd">
        <field name="eee">e</field>
        <field name="fff">f</field>
        <struct name="ggg">
            <field name="hhh">h</field>
        </struct>
    </struct>
    <array name="iii">
        <prototype>
            <struct name="__prototype">
                <field name="jjj"/>
                <field name="kkk"/>
            </struct>
        </prototype>
        <struct name="0">
            <field name="jjj">j1</field>
            <field name="kkk">k1</field>
        </struct>
        <struct name="1">
            <field name="jjj">j2</field>
            <field name="kkk">k2</field>
        </struct>
        <struct name="2">
            <field name="jjj">j3</field>
            <field name="kkk">k3</field>
        </struct>
    </array>
</document>

Clone this wiki locally