Java 多个重复的子元素xml
在这里寻求帮助 我正要使用simpleXml解析这个xml文件,但我不完全确定如何处理 这是xml代码的一个片段:Java 多个重复的子元素xml,java,android,xml,xml-parsing,simple-framework,Java,Android,Xml,Xml Parsing,Simple Framework,在这里寻求帮助 我正要使用simpleXml解析这个xml文件,但我不完全确定如何处理 这是xml代码的一个片段: <bible abbrev="ReinaV" name="Reina Valera Actualizada"> <book num="Gen"> <chapter num="1"> <verse num="1">En el principio creó Dios los cielos y la tierra
<bible abbrev="ReinaV" name="Reina Valera Actualizada">
<book num="Gen">
<chapter num="1">
<verse num="1">En el principio creó Dios los cielos y la tierra
</verse>
<verse num="2">
Y la tierra estaba sin orden y vacía. Había tinieblas sobre la faz del
océano, y el Espíritu de Dios se movía sobre la faz de las aguas.
</verse>
<verse num="3">Entonces dijo Dios: "Sea la luz", y fue la luz.</verse>
<verse num="4">
Dios vio que la luz era buena, y separó Dios la luz de las tinieblas.
</verse>
</chapter>
</book>
</bible>
如何管理重复的诗句元素?谢谢=)将
列表
与@ElementList
-注释一起使用。由于@ElementList
将创建一个包装列表内容的元素,因此请使用inline=true
防止出现这种情况
圣经
书
章
顺便说一句,所有那些required=false
都是可选的,我已经将它们设置为启用,例如,一本没有子元素的空书。如果这不合理,就把它们去掉
使用
@ElementList
你可以有一章有多个诗句,但你也可以对书籍这样做;一本书可能有多个章节等。使用列表
和@ElementList
-注释。由于@ElementList
将创建一个包装列表内容的元素,因此请使用inline=true
防止出现这种情况
圣经
书
章
顺便说一句,所有那些required=false
都是可选的,我已经将它们设置为启用,例如,一本没有子元素的空书。如果这不合理,就把它们去掉
使用
@ElementList
你可以有一章有多个诗句,但你也可以对书籍这样做;如果你的问题解决了,一本书可能有多个章节等?如果是,请接受答案。如果你的问题解决了?如果是,请接受答案。
@Root
public class bible {
@Attribute
String abbrev;
@Attribute
String name;
@Element
Book book;
public String getAbbrev() {
return abbrev;
}
public String getName() {
return name;
}
public Book getBook() {
return book;
}
@Root(strict = false)
private class Book {
@Attribute(required = false)
String num;
@Element(required = false)
Chapter chapter;
private class Chapter {
}
}
}
@Root(name = "bible")
public class Bible
{
@Attribute
private String name;
@Attribute
private String abbrev;
@Element(required = false)
private Book book;
// ...
}
@Root(name = "book")
public class Book
{
@Attribute
private String num;
@Element(required = false)
private Chapter chapter;
// ...
}
@Root(name = "chapter")
public class Chapter
{
@Attribute
private String num;
@ElementList(name = "verse", required = false, inline = true) /* <-- ! */
private List<Verse> verse;
// ...
}
@Root(name = "verse")
public class Verse
{
@Attribute
private String num;
@Text
private String text;
// ...
}