単一のドキュメントでより多くの属性値を読み取るにはどうすればよいですか。
これは xml サンプル xml ファイルです。
<Categories>
<Category name="Title 1"
<SubCategory>
<subcategory title="subtitle 1" id="1" ></subcategory>
<subcategory title="subtitle 2" id="2" ></subcategory>
<subcategory title="subtitle 3" id="3" ></subcategory>
</SubCategory>
</Category>
<Category>
<Category name="Title 2"
<SubCategory>
<subcategory title="subtitle 4" id="4" ></subcategory>
<subcategory title="subtitle 5" id="5" ></subcategory>
<subcategory title="subtitle 6" id="6" ></subcategory>
</SubCategory>
</Category>
</Categories>
ここでは、カテゴリ名とサブカテゴリのタイトルを表示する必要があります。以下のコードを使用し、アプリを実行する必要があります。これは、カテゴリ名を取得していることを意味しますが、サブカテゴリのタイトル名を取得できませんでした..サブカテゴリのタイトルを取得するにはどうすればよいですか名前... アイデアを教えてください..
私は宣言しました
static String KEY_CATEGORY = "Categories";
static final String KEY_TITLE = "Category";
static final String KEY_ARTICLE = "SubCategory";
その後、ノードリストを作成し、カテゴリ名にタグを付ける必要があります。
NodeList nl = doc.getElementsByTagName(KEY_TITLE);
NodeList nl1 = doc.getElementsByTagName(KEY_ARTICLE);
また、マップにすべてのカテゴリ名を追加します..だから私はforループを使用しました。
for (int i = 0; i < nl.getLength(); i++) {
HashMap<String, String> map = new HashMap<String, String>();
Element e = (Element) nl.item(i);
map.put( KEY_TITLE,(e.getAttribute("name")));
for (int j = 0; j < nl1.getLength(); j++) {
map.put( KEY_ARTICLE,((Element)nl1.item(i)).getAttribute("title"));
}
songsList.add(map);
}
}
ここでカテゴリ名を取得しています...しかし、すべてのサブカテゴリのタイトル名を取得できません...最初の2つのサブカテゴリのタイトル名しか取得できません...私のコードでは何が問題なのですか... forループ内でforループを使用しました。 .最初の for ループでカテゴリ名を取得し、2 番目の for ループでサブカテゴリのタイトルを取得します...合計カテゴリは 2 です...しかし、サブカテゴリは 6 です...つまり、2 つのサブカテゴリのタイトルだけを取得しています。つまり、合計カテゴリに依存します。カウント..はいの場合、すべてのサブカテゴリのタイトルを取得する方法を教えてください????pls は、すべてのサブカテゴリのタイトル名を取得するための解決策を教えてください...アイデアを教えてください???