0
我試圖解析在Android中使用SimpleXML此XML字符串:simplexml的機器人不能與解析HTML非關閉meta標籤
"<html>
<head>
<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\">
</head>
<body>
<doors>
<door id=\"1\" status=\"Closed\">
<door id=\"2\" status=\"Closed\">
<door id=\"3\" status=\"Closed\">
<door id=\"4\" status=\"Open\">
</door>
</door>
</door>
</door>
</doors>
</body>
</html>"
是的,我知道這門標記應立即關閉,而不是之後所有的門標籤已被宣佈,我無法控制這個HTML!
我有一個門類和一個帶有屬性ID和狀態的Door類。 (大門類有一個列表)
總之,似乎是破是標籤的解析:
拋出的異常是:
expected: /meta read: head (position:END_TAG </head>@1:87 in [email protected])
我可以看到,它被期待關閉元標記,它不存在。這個標籤對我來說沒用,我怎麼跳過它?我只關心門ids /狀態。
感謝
此外,如果你關心的類:
Doors.java
@Root(name="doors", strict=false)
public class Doors {
@ElementList(name="door")
private List<Door> doorList;
public Doors(){};
public List<Door> getDoors(){
return doorList;
}
public int getNumDoors(){
return doorList==null ? 0 : doorList.size();
}
}
Door.java
@Root(name="door")
public class Door {
@Attribute
private String id;
@Attribute
private String status;
public String getID(){
return id;
}
public String getStatus(){
return status;
}
}
謝謝,我只需要這樣做。我希望能夠完全遍歷標籤,但由於它是硬編碼的並且不會改變,所以String.replace會很好。 –