1

ここで問題が発生しました。GoogleマップからKMLドキュメントを解析したい。座標を格納するノードの解析に成功しました。

しかし、ここで子ノードがKMLドキュメントであるため、ノードを解析したいと思います。

<Placemark>
<name>Head north on Jalan Kebagusan Raya toward Jalan Anggrek</name>
<description><![CDATA[go 850&#160;m]]></description>
<address>Jalan Kebagusan Raya</address>
...
</Placemark

それを解析するために、私はこのコードを使用しました、

NodeList nlPlace = doc.getElementsByTagName("Placemark");
        for(int p = 0; p < nlPlace.getLength(); p++){
            Node rootPlace = nlPlace.item(p);
            NodeList itemPlace = rootPlace.getChildNodes();
            for(int y = 0; y < itemPlace.getLength(); y++){
                Node placeStringNode = itemPlace.item(y);
                NodeList place = placeStringNode.getChildNodes();
                //valueName = nameList.item(0).getNodeValue().toString() + "+";
                pathName.add(place.item(0).getNodeValue());
            }
        }

desk.setText("");
        for (int j = 0; j < strPlace.length; j++){
            desk.append("Deskripsi:\n" + strPlace[j] + "\n");
        }

しかし、実際のデバイス/エミュレーターで試したところ、やりたくないものが見つかりました。これは私の実際のデバイスからのスクリーンショットです ここに画像の説明を入力してください

スケッチから、「JalanDarmoKaliの北東のJalanDarmoerjo4に向かう」情報を取得したいと思います。それだけ。

問題を解決するのを手伝ってもらえますか?

事前に感謝し、私の英語を申し訳ありません、ありがとう:)

4

1 に答える 1

1

次のようなものはあなたが望むことをするはずです。

NodeList nlPlace = doc.getElementsByTagName("Placemark");
for(int p = 0; p < nlPlace.getLength(); p++){
    Element place = (Element)nlPlace.item(p);
    Element name = (Element)place.getElementsByTagName("name");

    //.....
    }
}
于 2012-05-20T09:15:45.427 に答える