Node "丢失"getTextContent()方法?

   刚才导入了一个工程,其中关于SOAP操作的类 一直报

SOAPMessage message.getSOAPBody().getFirstChild().getTextContent();

 找不到getTextContext()方法的错

 

我就纳闷了 我的jdk是jdk-1.6.0_45的呀 不该是JDK版本的问题 因为我查了一下org.w3c.dom.Node中的方法是有

 public String getTextContent()
                                         throws DOMException;

 的呀、

后来发现我的工程了有一个xml-apis-1.0.b2.jar的jar包 其中也包含一个 org.w3c.dom.Node的类  顿悟:估计java编译器使用的不是JDK本身自带的类 所以解决办法很简单把 JRE编译优先级提高就ok了如下图 将jre 位置提升



 

 

在XML中读取数组通常涉及到解析XML文档并找到代表数组的节点。在Java中,可以使用如DOM, SAX或JAXB等XML解析技术来实现这一点。下面是一个简化的例子,展示了如何使用DOM解析器读取XML中的数组: 首先,假设有一个XML文档如下所示,其中包含了一个数组的信息: ```xml <root> <array> <element>1</element> <element>2</element> <element>3</element> </array> </root> ``` 然后,使用Java代码读取这个数组: ```java import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; import java.util.ArrayList; import java.util.List; public class XMLToArray { public static void main(String[] args) { try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse("path/to/your/xmlfile.xml"); Element root = document.getDocumentElement(); NodeList arrayNodeList = root.getElementsByTagName("array"); if (arrayNodeList.getLength() > 0) { Element arrayElement = (Element) arrayNodeList.item(0); NodeList elementNodeList = arrayElement.getElementsByTagName("element"); List<Integer> list = new ArrayList<>(); for (int i = 0; i < elementNodeList.getLength(); i++) { String elementText = elementNodeList.item(i).getTextContent(); list.add(Integer.parseInt(elementText)); } // 现在list中包含了XML数组中的所有元素 System.out.println(list); } } catch (Exception e) { e.printStackTrace(); } } } ``` 这段代码首先创建了一个`DocumentBuilder`来解析XML文件,然后获取了代表根元素的`Document`对象。之后,代码遍历了所有名为"array"的节点,并从每个数组节点中读取所有的"element"子节点,将它们的内容添加到一个`List`中。最后,这个`List`包含了所有从XML文件中读取的数组元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值