1

ユーザーが初めてアプリを起動すると、アプリは Web から XML データを読み込みます。ただし、ユーザーがアプリを開くたびにデータをダウンロードする必要はありません。そこで、取得したばかりのデータで生成した新しい XML ファイルにデータを保存すると考えました。次に、ユーザーは、表示されているデータがキャッシュから読み込まれ、ボタンをクリックしてデータを同期し、最新のデータを取得できるという通知を受け取ります。

私の問題は、データをXMLファイルに保存することです。私はxmlSerializerでそれをやっていますが、1つのことを除いてうまくいきます。

これは私がいくつかのデータをシリアライズする方法です:

xmlSerializer.startTag(null, "imageURL");
xmlSerializer.text(((Node) imageURLList.item(0)).getNodeValue());
xmlSerializer.endTag(null, "imageURL");

私が今抱えている問題は、取得したXMLがこのように構築されていることです

root-element
     elementwithAttribute START
          data
     elementwithAttribute END
     elementwithAttribute START
          data
     elementwithAttribute END
root-element

ファイルの属性は、エントリの番号です

entry nr="1"

以下のようにしてみました

xmlSerializer.startTag(null, "rank nr=\""+i+"\"");

data

xmlSerializer.endTag(null, "rank");

しかし、これにより for ループから抜け出し、ランクが不適切に閉じられるまで最初のエントリのみが機能しました。このようにタグを閉じると

xmlSerializer.endTag(null, "rank nr=\""+i+"\"");

それは問題なく動作しますが、XML ファイルが希望どおりに表示されません。rankシリアライザーがそれがの終了タグであることを知っていることをどのように達成できrank nrますか?

4

0 に答える 0