Document 객체를 사용하여 XML에서 모든 태그를 추출하고 있습니다. xml에 빈 태그가 있으면 null 포인터 예외가 발생합니다. 어떻게이 일을 막을 수 있습니까? 빈 태그를 확인하려면 어떻게합니까?xml을 구문 분석하는 동안 빈 태그를 확인하려면 어떻게해야합니까?
<USTrade>
<CreditorId>
<CustomerNumber>xxxx</CustomerNumber>
<Name></Name>
<Industry code="FY" description="Factor"/>
</CreditorId>
<DateReported format="MM/CCYY">02/2012</DateReported>
<AccountNumber>54000</AccountNumber>
<HighCreditAmount>0000299</HighCreditAmount>
<BalanceAmount>0000069</BalanceAmount>
<PastDueAmount>0000069</PastDueAmount>
<PortfolioType code="O" description="Open Account (30, 60, or 90 day account)"/>
<Status code="5" description="120 Dys or More PDue"/>
<Narratives>
<Narrative code="GS" description="Medical"/>
<Narrative code="CZ" description="Collection Account"/>
</Narratives>
</USTrade>
<USTrade>
그래서, 내가 사용하는 경우 :이 태그입니다,하지만 난 getTextContent()를 수행 할 때, 그것은 FirstChild 때문에 널 포인터를 명중하기 때문에
NodeList nm = docElement.getElementsByTagName("Name");
if (nm.getLength() > 0)
name = nullIfBlank(((Element) nm.item(0))
.getFirstChild().getTextContent());
노드 목록 1의 길이) (제공 tag = Name에 대해 아무것도 반환하지 않습니다.
그리고 각 xml 태그에 대해이 작업을 수행했습니다. 모든 태그를 추출하기 전에 할 수있는 간단한 체크가 있습니까?
불행하게도, 이것이 코드를 보호 할 수있는 유일한 방법 일 것입니다. – roymustang86
일부 파이썬 대안? – user2925795