包含重复的字符串子节点的XML报文需要用java来读取出来

问题描述

<?xmlversion="1.0"encoding="UTF-8"?><Document><fujiedian><MsgId><Id>0090758109042009123102024984</Id><time>2009-08-26T10:00:24</time></MsgId><SummryDt><Dt>2009-10-29</Dt></SummryDt><Ptcpt><Acct><AcctSvcr>317110010019</AcctSvcr></Acct><ForMsgs><MsgId>0000000099682009102900119284</MsgId><MsgId>0000000099682009102900119294</MsgId><MsgId>3171100100192009102908751134</MsgId><MsgId>3171100107202009102903456250</MsgId><MsgId>0011000015092009102900000046</MsgId><MsgId>0000000099682009102900109955</MsgId><MsgId>0000000099682009102900109956</MsgId><MsgId>0000000099682009102900109957</MsgId><MsgId>0000000099682009102900109965</MsgId><MsgId>0000000099682009102900109966</MsgId><MsgId>0000000099682009102900109983</MsgId></ForMsgs></Ptcpt><Ptcpt><Acct><AcctSvcr>317110010720</AcctSvcr></Acct><ForMsgs><MsgId>3171100107202009102902923400</MsgId><MsgId>4021100119212009102905569272</MsgId><MsgId>3171100100192009102903178755</MsgId></ForMsgs></Ptcpt><Ptcpt></fujiedian></Document>

大家好:我需要把这些XML文件(上面的是简写版)用java读取出来。我用的方法是先判断,判断出父节点下有子节点就创建一个父节点的java对象。父节点下的子节点还有它的子节点的话继续创建java对象。如果子节点有属性创建java对象,没有属性它就是父节点java对象的一个属性。我已经解决好了子节点重复的问题。是用List集合来做的。但是,现在的问题是我没能把<MsgId>3171100107202009102902923400</MsgId>这类的相同子节点读取出来。上面的只是简写版,后面还有很长,3000多行。大神们帮帮忙。感谢!

解决方案

时间: 2024-10-16 10:11:58

包含重复的字符串子节点的XML报文需要用java来读取出来的相关文章

[经典面试题][搜狗]在一个字符串中寻找包含全部出现字符的最小字串

题目 一个字符串中含有n个字符,其中有m个不同的字符,n>>m,用最少的时间和空间找到包含所有这m个字符的最短的字串,不考虑特殊字符,只考虑字母数字即可. 例如: abccbaddac, 返回:cbad aabcadbbbcca,返回:bcad 思路 [算法系列之二十二]包含T全部元素的最小子窗口 本题目相比连接中所说的稍微简单一些,本题目不用考虑重复字符. 代码 /*--------------------------------------------- * 日期:2015-02-24 *

JavaScript 正则表达式 重复 转义 字符类详解

正则表达式的重复字符:字符 含义 {n,m} 匹配前一项至少n次,但是不能超过m次 {n,} 匹配前一项n次,或更多次 {n} 匹配前一项恰好n次 ? 匹配前一项0次或1次,也就是说前一项是可选的.相当于{0,1} + 匹配前一项1次或多次,相当于{1,} * 匹配前一项0次或多次,相当于{0,} 示例:  代码如下 复制代码 //所有十位数,到四位数,包括:0000 var pattern = /d{2,4}/; //如下正则内容匹配ab,abc,abcccc var pattern = /a

JavaScript实现找出字符串中第一个不重复的字符_javascript技巧

此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达. //找出字符串中第一个不重复的字符 // firstUniqueChar("vdctdvc"); --> t function firstUniqueChar(str){ var str = str || "", i = 0, k = "", _char = "", charMap = {}, result = {name: "",i

经典算法面试题目-设计算法移除字符串中重复的字符(1.3)

题目 Design an algorithm and write code to remove the duplicate characters in a string without using any additional buffer. NOTE: One or two additional variables are fine. An extra copy of the array is not. FOLLOW UP Write the test cases for this metho

同时包含数字和字符的数据怎么存到一个变量中?

问题描述 同时包含数字和字符的数据怎么存到一个变量中? 如题,比如一个数据"A1.01",我要通过sscanf将它存到一个变量中,怎么才能实现? 解决方案 可以建立个数组三 str[][5] 每次的数据占一行

JavaScript实现查找字符串中第一个不重复的字符

  此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达. 代码如下: //找出字符串中第一个不重复的字符 // firstUniqueChar("vdctdvc"); --> t function firstUniqueChar(str){ var str = str || "", i = 0, k = "", _char = "", charMap = {}, result = {name: "

求一个正则表达式(要求字符串长度6到12位,必须包含数字和字母,在此基础上可以包含其他任意字符)

问题描述 求一个正则表达式(要求字符串长度6到12位,必须包含数字和字母,在此基础上可以包含其他任意字符) (要求字符串长度6到12位,必须包含数字和字母,在此基础上可以包含其他任意字符) 解决方案 ^(?![^a-zA-Z]+$)(?!D+$).{6,12}$

注册表-点击包含firefox.exe字符的lnk却打开了ie

问题描述 点击包含firefox.exe字符的lnk却打开了ie 1.我的快捷方式指向目标没错 2.我直接双击firefox.exe能正确打开火狐 3.我通过命令行运行该快捷方式能正确打开火狐 4.如果我新建一个文档,并将它命名为firefox.exe,并为它产生一个lnk,点击该lnk则也是打开ie 5.被打开的ie会直接打开风木雨林的页面,这是被启动ie的命令行 6.我往注册表中查找不到u7654.html有关的内容 解决方案 4.如果我新建一个文档,并将它命名为firefox.exe,并为

将字符串重复的字符替换成单个字符的正则表达式

问题描述 将字符串重复的字符替换成单个字符的正则表达式 java怎么样将字符串中重复的字符替换成单个字符的正则表达式 解决方案 String str = "abaabcaaaad"; String ret = str.replaceAll("[a]+", "a");//替换字符a System.out.println(ret); 解决方案二: char[] arr = new char[s.length()]; int j = 0; outer: