我正在以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>
将两个xmls分开并将其放在单独的文件中的最佳方法是什么?或者我的意思是说我如何分离这两个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;
答案 0 :(得分:1)
以字符串形式获取文件。
使用indexOf搜索第一个和第二个&lt; ?xml version =“1.0”,
分为两部分,并处理每个xml字符串。
答案 1 :(得分:0)
我希望你的代码库中有一些XML解析机制。
简单的建议 - 您是否只需删除xml标头float:right
并使用父标记<?xml version="1.0" encoding="UTF-8"?>
包装整个XML?
这样它就会变成一个大的XML。然后,使用您喜欢的XML解析器并获取节点。第一个节点将是第一个XML,第二个节点将是第二个XML。
如果XML格式错误,您无论如何也无法单独解析。 (即使一个XML格式不正确,你也无法解析这两个XML - 这就是反面。)。
感谢。