在处理XML方面非常新。我正在搜索XML文档以获取特定节点,然后打印该节点的内容。我的问题是,尽管试图抓住if语句,但我有几个子节点仍打印为空白。
这是我的代码:
for (int n = 0; n < childNodes.getLength(); n++) {
Node currentnode = childNodes.item(n);
result += node.getNodeValue();
String NodeName = currentnode.getNodeName();
String NodeText = currentnode.getTextContent();
System.out.println("Child Node Name: " +NodeName);
if (NodeText != null && !NodeText.isEmpty()){
System.out.println("Child Node Text: " +NodeText);
}
}
结果是:
父节点名称:部分 子节点:11 子节点名称:#text 子节点文本:
子节点名称:id 子节点名称:#text 子节点文本:
子节点名称:代码 子节点名称:#text 子节点文本:
子节点名称:标题 子节点文本:指示和用法 子节点名称:#text 子节点文本:
子节点名称:文本 子节点文本:
Herpes Zoster Infections: Acyclovir tablets, USP are indicated for the acute treatment of herpes zoster (shingles).
Genital Herpes: Acyclovir tablets, USP are indicated for the treatment of initial episodes and the management of recurrent episodes of genital herpes.
Chickenpox: Acyclovir tablets, USP are indicated for the treatment of chickenpox (varicella).
子节点名称:#text 子节点文本:
子节点名称:有效时间 子节点名称:#text 子节点文本:
我正在尝试在中间而不是其他空白节点中隔离文本段落。我怎样才能做到这一点?
谢谢!
答案 0 :(得分:0)
用NodeText.trim()。isEmpty()替换NodeText.isEmpty()可以解决问题!