使用Java检查是否存在多个XML标记

时间:2016-09-28 10:10:16

标签: java xml

您好我正在尝试使用Java阅读 XML文档。我想在尝试获取其中的内容之前检查所有标记是否存在

我有类似的东西;

String ToolVersion;

if (element.getElementsByTagName("ToolVersion").getLength() > 0) {
                    ToolVersion = element.getElementsByTagName("ToolVersion").item(0).getTextContent(); }

我有超过20个XML标签,有没有办法做到这一点没有20" IF"条件?

2 个答案:

答案 0 :(得分:2)

要考虑一些代码。

String getData(Element e, String tagName){
    if (e.getElementsByTagName(tagName).getLength() > 0) {
        return e.getElementsByTagName(tagName).item(0).getTextContent(); 
    } else return null;
}


BODY

List<String> elementsList = Arrays.asList("ToolVersion", "ToolName", "SomethingElse");
Element e;
String tagData;

for(String tagName : elementsList){
    tagData = getData(e, tagName);
    //do something here
}

答案 1 :(得分:1)

您可以使用jaxb执行此操作。它提供marshaller和demarshaller,它将帮助您验证标签是否存在。