Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java代码中不存在的xml标记处理_Java_Xml - Fatal编程技术网

java代码中不存在的xml标记处理

java代码中不存在的xml标记处理,java,xml,Java,Xml,我有这个问题,它出现在一个非常特殊的案例中。我的XML就像 <xo:USAddress> <xo:Street>990 STANLEY CT</xo:Street> <xo:City>ERIE</xo:City> <xo:County>BOULDER</xo:County> <xo:State>COLORADO</xo:State> <xo:Z

我有这个问题,它出现在一个非常特殊的案例中。我的XML就像

<xo:USAddress>
    <xo:Street>990 STANLEY CT</xo:Street>
    <xo:City>ERIE</xo:City>
    <xo:County>BOULDER</xo:County>
    <xo:State>COLORADO</xo:State>
    <xo:ZipCode>80516</xo:ZipCode>
  </xo:USAddress>
在这种情况下,xml中没有县信息——我应该如何处理这种情况。尝试了空检查,但这并不能解决问题,请建议。

您确实不会得到空值,因为大多数XML解析器假定为空字符串(在Java中与空值不同)。尝试使用
address.getCounty().isEmpty()
来确定county是否只是一个空值

只有当county字段不存在且county值未初始化时,才可能为null。对于这种情况,最好的方法可能是使用Java8可选字段()

如果字段初始化为
可选.empty()
,则可以使用简单表达式访问其内容或返回默认值,如下所示:

String county = address.getCounty().orElse("N/A");

这将返回county或值“N/A”。还有很多其他有用的方法。

您是否尝试过
如果(usAddress_PAS.getCounty().getStringValue().length()>0){usAddress_Svc.setCounty(usAddress_PAS.getCounty().getStringValue());}
--县值可能是非空的,但是空字符串?谢谢您的回复。这里的问题是,如果县信息不可用,我会得到一个空指针。您可以尝试对县处理进行反向编码,以使用
可选的
而不是文本。
String county = address.getCounty().orElse("N/A");