java如何解析下面的xml代码?
我将sale tag作为子节点存在多次,但在该节点中,员工标记并不适用于所有sale tag。需要解析这个xml。没有员工标记时出现空指针异常。即使某个子标记名不存在,如何解析该xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<Transactions>
<DocumentInfo TransferType="Transactions" Copyright="2010, Hectronic GmbH" CreatedBy="HecPoll">
<CreateDate Year="2011" Month="7" Day="13"/>
<CreateTime Hour="6" Minute="0" Second="16"/>
</DocumentInfo>
<DocumentData>
<Sale RcpNum="151" Amount="228.760" Station="1" Customer="000003" Terminal="1">
<Date Year="2011" Month="07" Day="12"/>
<Time Hour="07" Minute="23" Second="00"/>
<ArticleSale Quantity="6.020" SglPriceAsSold="38.000" SglPriceAsStored="38.000" SglPrice="38.000" Amount="228.760" FCCAmount="228.760" Taxrate="18" LogicalFPNumber="1" TankNumber="3" ArtNum="3" SaleNum="1"/>
<Payment PAN="000000002117904490D" Amount="228.760" TenderCode="0" PayNum="1"/>
<Employee Lastname="V KALYANI"/>
<Vehicle LicensePlate="10K"/>
</Sale>
<Sale RcpNum="255" Amount="6650.000" Station="1" Customer="ZZZZZZ" Terminal="0">
<Date Year="2011" Month="07" Day="12"/>
<Time Hour="07" Minute="24" Second="00"/>
<ArticleSale Quantity="175.000" SglPriceAsSold="38.000" SglPriceAsStored="38.000" SglPrice="38.000" Amount="6650.000" FCCAmount="6650.000" Taxrate="19" LogicalFPNumber="1" TankNumber="1" ArtNum="3" SaleNum="1"/>
<Payment PAN="000000001885018677D" Amount="6650.000" TenderCode="0" PayNum="1"/>
</Sale>
<Sale RcpNum="152" Amount="3078.000" Station="1" Customer="000003" Terminal="1">
<Date Year="2011" Month="07" Day="12"/>
<Time Hour="07" Minute="27" Second="00"/>
<ArticleSale Quantity="81.000" SglPriceAsSold="38.000" SglPriceAsStored="38.000" SglPrice="38.000" Amount="3078.000" FCCAmount="3078.000" Taxrate="18" LogicalFPNumber="1" TankNumber="3" ArtNum="3" SaleNum="1"/>
<Payment PAN="000000002117928224D" Amount="3078.000" TenderCode="0" PayNum="1"/>
<Employee Lastname="A MUNIYANDI"/>
<Vehicle LicensePlate="10F"/>
</Sale>
</DocumentData>
</Transactions>
谢谢
# 1 楼答案
我假设您使用的是dom解析器。如果您使用的是
getElementsByTagName()
方法,如果没有找到这样的元素,它将返回null。你最好检查一下雇员标签是否为空