Амперсанд в URL при разборе XML в Android - PullRequest
0 голосов
/ 21 февраля 2012

У меня проблема.Я разбираю XML.В этом XML есть URL, который выглядит следующим образом:

<link>http://basa.med-info.ru/xse/index.php?query=грипп&amp;cluster=9025</link>

Когда эта ссылка анализируется с использованием этого кода:

NodeList linkList = drugElement.getElementsByTagName("link");
            Element linkElement = (Element)linkList.item(0);
            NodeList textLinkList = linkElement.getChildNodes();
            link = textLinkList.item(0).getNodeValue().trim();
            Log.i(TAG, "link: "+link);

, результат будет таким:

link: http://basa.med-info.ru/xse/index.php?query=грипп

Итак, по какой-то причине остальная часть URL потеряна: & cluster = 9025 Как ее решить?

Обновление Истинный код:

NodeList linkList = drugElement.getElementsByTagName("link");
            Element linkElement = (Element)linkList.item(0);
            NodeList textLinkList = linkElement.getChildNodes();
            link = "";
            for (int j = 0; j < textLinkList.getLength(); j++)
            {
                    link += textLinkList.item(j).getNodeValue();
            }
            Log.i(TAG, "link: "+link);

1 Ответ

1 голос
/ 21 февраля 2012

У вас есть

        link = textLinkList.item(0).getNodeValue().trim();

, поэтому вы явно получаете текст только с первого текстового узла в вашем <link>.

Скорее всего, остальная часть текста находится в последовательных элементах в textLinkList.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...