タグ内にリストされている要素の順序をキャプチャする方法を探していましたが、あまり成功していません..
新規編集:
<android>
<leags>
<leag name = "someName">
<headlines>
<pageType>headlines</pageType>
<story>someStoryURL</story>
<fullStory>someFullStoryURL</fullStory>
</headlines>
<scores></scores>
<statistics></statistics>
</leag>
<leags>
</android>
-要素の順番を 1) 見出し 2) スコア 3) 統計として把握したい。xml が変更され、スコアが見出しの前にリストされている場合、1) スコア 2) 見出し 3) 統計になります。
私はアンドロイドのみを解析します - このように:
@Root(name = "android", strict = false)
public class android
{
@ElementList(name = "leags", required = false)
private List<Leag> leags;
public Leag getLeagByName(String name)
{ // go through list of leags and return leag with matching name}
}
したがって、私の「リーグ」オブジェクトでは、要素の順序をキャプチャしたいと思います-それを行う方法はありますか?
次のように new AnnotionStrategy() を設定する必要があると思います。
tAndroid android = null;
Serializer serial = new Persister(new AnnotationStrategy());
android = serial.read(android .class, source);
League x= android.getLeagueByName("oeoe");
for(String s: x.getOrder())
{
Log.i("Order", s);
}
編集前:
上記の xml が次のコードによって渡されていると仮定します。
@Element(name="headlines")
public class Headlines
{
@Element(name="pageType", required = false)
private String pageType;
@Element(name="story", required = false)
private String storiesURL;
@Element(name="fullStory", required = false)
private String fullStoryURL;
public String getStoriesURL()
{
return storiesURL;
}
public String getFullStoryURL()
{
return fullStoryURL;
}
@Override
public String toString()
{
return "PageType: " + this.pageType +
"\nStoriesURL: " + this.storiesURL +
"\nFullStoryURL: " + this.fullStoryURL;
}
}
要素が解析される順序を何らかの形で返す方法はありますか?
次のような正しい順序で何らかの文字列を返すメソッドのように:
- ページタイプ
- 話
- フルストーリー