JAVA题:有一个字符串,要将其中的数据拆分到一个实体类中,求高手赐教

实体类为test,属性有id,stime,etime,下面的字符是需要进行取出中间的数据。<ids><test><id>11</id><stime>02-13</stim... 实体类为test,属性有id,stime,etime,下面的字符是需要进行取出中间的数据。
<ids><test><id>11</id><stime>02-13</stime><etime>03-28</etime><id>22</id><stime>02-13</stime><etime>03-28</etime><id>33</id><stime>02-13</stime><etime>03-28</etime></test><ids/>,求高手指教。另外,需判定stime,etime是否存在,不存在则存入空字符串。
高分求答案。
如部分id无对应stime,etime

,如何处理
<ids><test><id>11</id><id>22</id><stime>02-13</stime><etime>03-28</etime><id>33</id></test><ids/>
展开
 我来答
帐号已注销
2015-02-13 · TA获得超过1562个赞
知道小有建树答主
回答量:674
采纳率:0%
帮助的人:820万
展开全部
import java.io.File;
import java.util.List;

import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class Demo {

public static void main(String[] args) throws Exception {
SAXReader reader = new SAXReader();
File file = new File("books.xml"); //你的字符串可以放这个文件里面
Document document = reader.read(file);
Element root = document.getRootElement();
List<Element> childElements = root.elements();
for (Element child : childElements) {

//已知属性名情况下
System.out.println("id: " + child.attributeValue("id"));

//已知子元素名的情况下
System.out.println("stime" + child.attributeValue("stime"));
System.out.println("etime" + child.attributeValue("etime"));
//这行是为了格式化美观而存在
System.out.println();
}
}

}
追问
String text = " Java班";  
Document document = DocumentHelper.parseText(text);

如果不引用上面的dom4j还有什么方法拆分
追答
String text = " Java班";  
String[] bufPath = text.split("[]\\s*[]*/*");

System.out.println( bufPath[0]);
System.out.println( bufPath[1]);
System.out.println( bufPath[2]);
System.out.println( bufPath[3]);
System.out.println( bufPath[4]);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhongtyler
2015-02-13 · TA获得超过4408个赞
知道大有可为答主
回答量:4384
采纳率:79%
帮助的人:926万
展开全部
这是xml解析,去看dom4j的资料吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式