<?xml version="1.0" encoding="utf-8"?> <CobjectBeans> <CobjectBean> <attribute isinternal="false" fieldname="TRS" name="移交" type="1" value="未移交”/> <attribute isinternal="false" fieldname="TRS1" name="整理" type="1" value="待整理”/> <attribute isinternal="false" fieldname="TRS2" name="格式" type="1" value="未转换”/> <attribute1 isinternal="false" name="电子文件" path="/shar/rt/re.txt" type="1" /> <attribute1 isinternal="false" name="电子文件" path="/shar/rt/re1.txt" type="1" /> <attribute1 isinternal="false" name="电子文件" path="/shar/rt/re2.txt" type="1" /> </CobjectBean> </CobjectBeans> 在java中如何解析?
时间: 2023-07-03 09:27:59 浏览: 97
jQuery中[attribute=value]选择器用法实例
可以使用 Java 中的 DOM 解析器来解析该 XML 文档。以下是一个简单的示例代码:
```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;
public class XmlParser {
public static void main(String[] args) {
try {
// 创建 DOM 解析器工厂
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
// 创建 DOM 解析器
DocumentBuilder builder = factory.newDocumentBuilder();
// 解析 XML 文档
Document doc = builder.parse("test.xml");
// 获取根元素
Element root = doc.getDocumentElement();
// 获取所有 CobjectBean 元素
NodeList cobjectBeans = root.getElementsByTagName("CobjectBean");
for (int i = 0; i < cobjectBeans.getLength(); i++) {
Element cobjectBean = (Element) cobjectBeans.item(i);
// 获取所有 attribute 元素
NodeList attributes = cobjectBean.getElementsByTagName("attribute");
for (int j = 0; j < attributes.getLength(); j++) {
Element attribute = (Element) attributes.item(j);
String name = attribute.getAttribute("name");
String value = attribute.getAttribute("value");
System.out.println(name + ": " + value);
}
// 获取所有 attribute1 元素
NodeList attributes1 = cobjectBean.getElementsByTagName("attribute1");
for (int j = 0; j < attributes1.getLength(); j++) {
Element attribute1 = (Element) attributes1.item(j);
String name = attribute1.getAttribute("name");
String path = attribute1.getAttribute("path");
System.out.println(name + ": " + path);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
该代码使用 Java 内置的 DOM 解析器,首先解析 XML 文档,然后获取根元素,遍历所有 CobjectBean 元素,再遍历每个 CobjectBean 元素下的所有 attribute 和 attribute1 元素,最后输出属性的名称和值。
阅读全文