java的xml返回bigdecimal类型list写个例子
时间: 2023-10-27 15:06:16 浏览: 134
以下是一个使用Java的XML解析器解析XML文件,并返回一个BigDecimal类型的List的示例:
```java
import java.io.File;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class XmlBigDecimalListExample {
public static void main(String[] args) {
List<BigDecimal> bigDecimalList = parseXmlFile("example.xml");
System.out.println(bigDecimalList);
}
private static List<BigDecimal> parseXmlFile(String fileName) {
List<BigDecimal> bigDecimalList = new ArrayList<BigDecimal>();
try {
File xmlFile = new File(fileName);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(xmlFile);
doc.getDocumentElement().normalize();
NodeList nodeList = doc.getElementsByTagName("number");
for (int i = 0; i < nodeList.getLength(); i++) {
Node node = nodeList.item(i);
if (node.getNodeType() == Node.ELEMENT_NODE) {
Element element = (Element) node;
BigDecimal bigDecimal = new BigDecimal(element.getTextContent());
bigDecimalList.add(bigDecimal);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return bigDecimalList;
}
}
```
在本示例中,我们首先定义了一个名为`parseXmlFile`的方法,该方法接受一个XML文件名称作为参数,并返回一个包含`BigDecimal`类型元素的`List`。然后,在`parseXmlFile`方法中,我们使用Java内置的XML解析器(`DocumentBuilder`和`DocumentBuilderFactory`)从XML文件中提取number元素,并将其转换为`BigDecimal`类型,最后将其添加到`bigDecimalList`中。最后,我们在示例的主方法中调用`parseXmlFile`方法,并打印结果。
阅读全文