Jsonix元素和值限制

时间:2017-12-08 12:24:03

标签: marshalling jsonix

我正在使用JSONIX来编组和解组从其他系统收到的XML。我想要编组和解组的XML

  

<charge>         392.2361
          <formatted> {392.24 {1}}
              </formatted>

我仍然无法弄清楚如何解组值“392.2361”。任何有想法的人?提前致谢

2 个答案:

答案 0 :(得分:0)

这里需要的是mixed property

{
    type: 'classInfo',
    localName: 'MyType',
    propertyInfos: [{
        type: 'elementRef',
        name: 'charge',
        elementName: 'formatted',
        collection : true,
        mixed: true
    }]
}

您将获得的价值如下:

[ '392.2361', { name: { localPart: 'formatted' }, value: '392.24' }]

没有经过测试,没有保证,但你明白了。

答案 1 :(得分:0)

最后正确应用它。谢谢#lexicore

这是我对混合属性的实现

select KG_SEQ.st_server_site from my_table

unmarshall的结果如下:

{
     type: 'classInfo',
     localName: 'ItemizedForDateType', //<date>
     propertyInfos:[
            {
                type: 'element',
                name: 'priceTextType',
                elementName: 'price',
                typeInfo: 'DOTWXML.PriceFormattedType'
            },
            {
                type: 'element',
                name: 'priceMinSellTextType',
                elementName: 'priceMinimumSelling',
                typeInfo: 'DOTWXML.PriceFormattedType'
            }
    ]
},
{
     type: 'classInfo',
     localName: 'PriceFormattedType',                           
     propertyInfos:[
        {
            type: 'elementRef',
            name: 'charge',
            elementName: 'formatted',
            collection : true,
            mixed: true
        },
     ]
}

我错误地删除了“ collection:true ”,并在取消联合后获得了“ {} ”。一旦我意识到“集合:真实”是必需,请将其放在上下文中并将所有内容正确地解组。