Element之获取子节点方法

1 想要读取字符串格式的xml内容。需要通过ByteArrayInputStream方法,ByteArrayInputStream该类是将字符串内容转化为字节数组的流对象 
如:String xml_string="<root><key>SoapService_1</key><request>579</request></root>";
ByteArrayInputStream byteArrayInputStream=new ByteArrayInputStream(xml_string.getBytes());


2 想要读取String格式的xml内容。通过SAXReader和Document来读取。则需要通过ByteArrayInputStream来处理。通过SAXReader的read(new InputStream)方法,形参为ByteArrayInputStream即可。ByteArrayInputStream为InputStream的子类。
如:String xml_string="<root><key>SoapService_1</key><request>579</request></root>";
SAXReader saxReader=new SAXReader();
ByteArrayInputStream byteArrayInputStream=new ByteArrayInputStream(xml_string.getBytes());
Document doc=saxReader.read(byteArrayInputStream);


3 得到了Document对象后,就可以得到根节点。
如:Element root=doc.getRootElement();


4 通过element(String name)来得到name节点的Element元数据
如:Element key_element=root.element(element_name);//这里就是得到名称为name的子节点,区分大小写
if(key_element!=null){
System.out.println("已获得"+key_element.getName()+"节点");
}


5 element(name)区分大小写。name的值区分大小写。key和KEY是不同的节点。
如:Element key_element=root.element("key");
Element key_element=root.element("KEY");
返回的是不同的节点。element(name)的节点名称是区分大小写的。


6 element(name)只能返回当前节点的下一级节点(即子节点)。而不能返回子节点的子节点。
如:String xml_string="<root><request><key>key</key><a>aa</a></request></root>";
SAXReader saxReader=new SAXReader();
ByteArrayInputStream byteArrayInputStream=new ByteArrayInputStream(xml_string.getBytes());
Document doc;
doc = saxReader.read(byteArrayInputStream);
Element root=doc.getRootElement();
Element key_element=root.element("key");//这里返回的是null。得不到子节点的子节点。只能在子节点中进行获取




Element对象的element(name)方法是得到节点名称为name的子节点。返回的是Element对象
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值