<?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="未转换”/> <CObjectBean > </CObjectBeans > 使用java如何解析?
时间: 2023-07-03 19:26:34 浏览: 171
jQuery中[attribute=value]选择器用法实例
这段代码是一个XML格式的字符串,可以使用Java中的DOM或SAX解析器对其进行解析。以下是使用DOM解析器的示例代码:
```java
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
import org.w3c.dom.Element;
import java.io.File;
public class XMLParser {
public static void main(String[] args) {
try {
File inputFile = new File("input.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(inputFile);
doc.getDocumentElement().normalize();
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("CobjectBean");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
System.out.println("\nCurrent Element :" + nNode.getNodeName());
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
System.out.println("TRS : " + eElement.getElementsByTagName("attribute").item(0).getAttributes().getNamedItem("value").getNodeValue());
System.out.println("TRS1 : " + eElement.getElementsByTagName("attribute").item(1).getAttributes().getNamedItem("value").getNodeValue());
System.out.println("TRS2 : " + eElement.getElementsByTagName("attribute").item(2).getAttributes().getNamedItem("value").getNodeValue());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
此代码将打印XML中的每个CobjectBean元素及其各个属性的值。请注意,您需要将代码中的文件名更改为您的实际文件名。
阅读全文