我尝试将一些XML解析为对象(Android),并使用简单的XML库。我可以解析一些带有子元素或列表的元素,但是当一个元素有多个具有相同标记名的子元素时,我会得到一个错误:
元素'Item‘已与....一起使用。
我知道具有相同名称的标签是一个问题,但是每个标签都有不同的属性,所以可以用它来解决这个问题。我试了很多次,但就是做不到。
<Channel>
<News>
<Item kind="dunno">
//An string with some info
</Item>
<Item kind="anotherOne">
//An string with some info
</Item>
<Item kind="Pfff">
//An string with some info
</Item>
</News>
</Channel>我尝试了以下几种方法:
@Root(name = "Channel")
public class Channel
{
@Elementlist(inline = true)
private List<News> news;
}
@Root(name = "News")
public class News
{
@Element(name = item)
private String item;
}但这并不起作用,因为已经在使用了。我试着把它列成一个列表,但也不起作用。我尝试了更多的东西,但正如我所说的,我做不到。
我想要的是,我有一个Chanel对象,它包含一个或多个包含一个或多个项目的新闻对象。有时只有1个项目,有时会有更多。
发布于 2016-01-27 17:23:12
我已经找到了解决方案。Insead of
@Root(name = "Channel")
public class Channel
{
@Elementlist(inline = true)
private List<News> news;
}我需要做的是理解。
@Root(name = "Channel")
public class Channel
{
@Elementlist(name="News")
private List<String> news;
}该库自动识别这些项目,并且不再需要将这些项目添加到list.The整个新闻类中。
https://stackoverflow.com/questions/35013974
复制相似问题