xml结构如下所示。我想将ID name="hotelId"
value="00000000003054D8"
和ID name="offerId" value="74"
传递给 Jsoup Connect
data()
方法。
<GetBookingIdsRequest token="f6ERmpwxbZ4ysUgCHB9mlSPcd9rf5DVB39C--yLbNSdG" sid="TVd8DY5OQi2vf82h" xmlns="http://www.travelfusion.com/xml/api/simple">
<id name="hotelId" value="00000000003054D8"/>
<id name="offerId" value="74"/>
</GetBookingIdsRequest>
我如何传递相同内容?
答案 0 :(得分:0)
以下是获取值的示例:
Document doc = ...
Elements request = doc.select("getbookingidsrequest");
for( Element element : request )
{
final String hotelId = element.select("id[name=hotelId]").first().attr("value");
final String offerId = element.select("id[name=offerId]").first().attr("value");
System.out.println(hotelId);
System.out.println(offerId);
}
<强>输出:强>
00000000003054D8
74
如果您只有一个GetBookingIdsRequest
- 代码,则可以使用first()
方法代替for
- 循环:
Document doc = ...
Element request = doc.select("getbookingidsrequest").first();
final String hotelId = request.select("id[name=hotelId]").first().attr("value");
final String offerId = request.select("id[name=offerId]").first().attr("value");
System.out.println(hotelId);
System.out.println(offerId);
答案 1 :(得分:0)
您可以将以下内容作为Connection
对象的数据映射的一部分传递。
map.put("id[0].name", "hotelId");
map.put("id[0].value", hotel_Id);
map.put("id[1].name", "offerId");
map.put("id[1].value", offer_Id);