[英]Separate two XMLs from single file
我从XML格式的Web服务获得响应,它在Web服务返回的单个XML中包含两个不同的XML响应。 例:
<?xml version="1.0" encoding="UTF-8"?>
<transaction type>
...
...
</transaction type>
<?xml version="1.0" encoding="UTF-8"?>
<verification_statement>
...
...
</verification_statement>
分离这两个xml并将其放在单独的文件中的最佳方法是什么? 或者我的意思是说我该如何分隔这两个XML? 我已经用JAVA编写了Web服务客户端。
得到回应的代码:
int status = httpConn.getResponseCode();
if (status == HttpURLConnection.HTTP_OK) {
BufferedReader reader = new BufferedReader(new InputStreamReader(
httpConn.getInputStream()));
String line = null;
while ((line = reader.readLine()) != null) {
response.add(line);
}
reader.close();
httpConn.disconnect();
} else {
throw new IOException("Server returned non-OK status: " + status);
}
return response;
用字符串获取文件。
使用indexOf搜索第一个<和第二个<?xml version =“ 1.0”,
分为2部分,并处理每个xml String。
我希望您的代码库中将有一些XML解析机制。
简单的建议-您不能只删除xml标头<?xml version="1.0" encoding="UTF-8"?>
并用父标记<globalParentTag>
包装整个XML吗?
这样,它将成为一个单一的大型XML。 然后,使用您喜欢的XML解析器并获取节点。 第一个节点将是第一XML,第二个节点将是第二XML。
如果XML格式错误,您将无论如何也无法单独解析。 (即使一个XML格式不正确,您也将无法解析这两个XML,这是不利的一面。)
谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.