xml结构:
<RightMenuItems> <Item Code="New" Name="新建" GroupCode="Edit" GroupName="编辑"/> <Item Code="Open" Name="打开" GroupCode="Edit" GroupName="编辑"> <item Code="Word" Name="Word文档" GroupCode="CommonDocument" GroupName="常规"/> <item Code="Excel" Name="Excel文档" GroupCode="CommonDocument" GroupName="常规"/> <item Code="CustomDocument" Name="自定义文档" GroupCode="CustomDocument" GroupName="自定义"/> </Item> <Item Code="Save" Name="保存" GroupCode="Edit" GroupName="编辑"/> <Item Code="Exit" Name="离开" GroupCode="Exit" GroupName="离开"/> </RightMenuItems>
解析方法:
$(xml).find("RightMenuItems").each(function () { this.data = Traversal($(this).children()); }); var Traversal = function (nodes) { var itemList = new Array(); $.each(nodes, function () { var entity = new RightMenuEntity(); var obj = $(this); entity.Code = obj[0].getAttribute("Code"); entity.Name = obj[0].getAttribute("Name"); entity.GroupCode = obj[0].getAttribute("GroupCode"); entity.GroupName = obj[0].getAttribute("GroupName"); if (obj[0].hasChildNodes()) entity.ChildItems = Traversal(obj.children()); itemList.push(entity); }); return itemList; };
以上就是javascript使用递归解析XML的全部代码了,超级简洁,非常使用,给需要的小伙伴参考下。
我用一个递归函数尝试过它,它迭代语句,当语句不是文字时,它会跟随对象到达下一个节点。像这样: 但不知怎的,我用这个方法没有什么进展。非常感谢你的每一次洞察。
我在解析名为“test.XML”的XML文件时遇到如下问题: 我想得到这样的结构:[[[[un]],[[deux,trois,quatre],[[cinq,six,sept],[huit,noeuf],[dix,onze]],但我得到了这个[[[cinq,six,sept],[[huit,noeuf],[[dix,onze],[[deux,trois,quatre]] 这是我的代码:
问题内容: 我试图简化我的代码:我想存储键和值(所有字符串)。 我实际上是使用A 来存储它。hat方法可以是值()或新节点()。 如何简化此代码?递归函数会很好。 问题答案: 假设您的最终目标只是将JSON反序列化为,那么使用Jackson可以简单得多。使用: 您将需要错误处理等,但这是一个很好的起点。
我试图简化我的代码:我想存储键和值(所有字符串)。 我实际上在使用
问题内容: 我有一个下面的JSON,我需要从中制作一个。在下面的JSON中,我只有3个级别,但通常可以更高,有时也可以更低。 我图的关键是它的部分和值应是最后。 现在我可以嵌套在其中,因此在为此创建POJO时遇到问题。我可以有一个级别,也可以嵌套在每个级别中,而我总是需要获取最后一个的ID 。 因此,我通过转到jsonschema2pojo来为此创建一个POJO,并提供了JSON,它在其中生成了我
我需要使用Gson将传入的json消息解析为Java对象。类“MessageBody”应该用于向Gson提供信息。fromJson(json,MessageBody.class); json消息如下所示。 第一层有三个静态字段。第三个字段(“字段”)是“数据字段”对象的列表。 DataField对象有一个类型字段和一个值字段。它的价值可以是异质的。预期类型为:“字符串”、“int”、“布尔”和“H