0

Data.xml ファイルを変更して、1 つではなく 2 つのブランチを含むようにした場合、配列内のオブジェクトをキャッチするにはどうすればよいですか?

現在の MainActivity.java ファイル:

    try {
        Serializer serializer = new Persister();
        AssetManager assetManager = getAssets();
        InputStream inputStream = assetManager.open("data.xml");
        Data d = serializer.read(Data.class, inputStream);
        System.out.println(d.getPokemon());
    } 
    catch (Exception e) {
        e.printStackTrace();
    }

現在の Data.java ファイル:

@Root(name="Data")
public class Data {

    @Element(name="pkmn")
    private Pokemon pokemon;

    public Pokemon getPokemon() {
        return pokemon;           
    }
}

現在の Pokemon.java ファイル:

public class Pokemon implements Serializable{


    @Element(name="nm")
    private String name;
    @Element(name="tp")
    private String type;
    @Element(name="ablt")
    private String abilities;
    @Element(name="wkns")
    private String weakness;
    @Element(name="img")
    private String image;

    public Pokemon(){}
    public Pokemon(String n, String t, String a, String w, String i){
        name = n;
        type = t;
        abilities = a;
        weakness = w;
        image = i;
    }
    public String toString() {...}

現在の Data.xml ファイル:

<?xml version = "1.0" encoding = "utf-8" ?>
<Data>
<pkmn> 
        <nm>Beedrill</nm> 
        <tp>bug</tp> 
        <ablt>swarm</ablt>
        <wkns>fire</wkns>
        <img>beedrill</img>
    </pkmn> 
<Data>

新しい Data.xml ファイル:

<?xml version = "1.0" encoding = "utf-8" ?>
<Data>

    <pkmn> 
        <nm>Beedrill</nm> 
        <tp>bug</tp> 
        <ablt>swarm</ablt>
        <wkns>fire</wkns>
        <img>beedrill</img>
    </pkmn> 

    <pkmn> 
        <nm>Blastoise</nm> 
        <tp>water</tp> 
        <ablt>torrent</ablt>
        <wkns>electric</wkns>
        <img>blastoise</img>
    </pkmn> 
</Data>
4

1 に答える 1

2

ドキュメントによると、@ElementList[1] または@ElementArray[2] のいずれかを使用できます。

  1. http://simple.sourceforge.net/download/stream/doc/tutorial/tutorial.php#list
  2. http://simple.sourceforge.net/download/stream/doc/tutorial/tutorial.php#array
于 2013-10-25T02:25:59.007 に答える