Урок 79. XmlPullParser. Парсим XML

Обсуждение уроков
TAMEPJlAH
Сообщения: 4
Зарегистрирован: 28 окт 2013, 11:39

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение TAMEPJlAH » 28 окт 2013, 11:53

ivan160892 писал(а):HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost( url );
HttpResponse response = httpclient.execute( httppost );
in = new BufferedReader ( new InputStreamReader(response.getEntity().getContent (),"utf-8"));
String inputLine = "";
StringBuilder websiteContent = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
websiteContent.append(inputLine);
websiteContent.append('\n');
}
String websiteContentFull = websiteContent.toString();
XmlPullParser prepareXpp() throws XmlPullParserException {
// получаем фабрику
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
// включаем поддержку namespace (по умолчанию выключена)
factory.setNamespaceAware(true);
// создаем парсер
XmlPullParser xpp = factory.newPullParser();
// даем парсеру на вход Reader
xpp.setInput(new StringReader(websiteContentFull));
Если можно объясните поподробнее как парсировать файлы с интернета?

Аватара пользователя
trew
Сообщения: 450
Зарегистрирован: 28 сен 2013, 17:34

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение trew » 28 окт 2013, 12:59

1. Компьютер должен быть подключен к интернету.
2. У Вас должен быть доступ к сайту http://www.google.com
3. Если первые два условия выполнены, тогда набирайте
в строке поиска "android parsing website example"
или "android parse html example"
4. Если нужен перевод, используйте http://translate.google.ru/
туда можно копировать адрес сайта (url)
Когда выкладываете код на форум - код оформляйте. Редактор - поищите слова Geshi Syntax -Java. (или xml)
Свои сообщения можно редактировать - кнопка edit.

WaNdera
Сообщения: 3
Зарегистрирован: 31 окт 2013, 23:55

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение WaNdera » 01 ноя 2013, 00:07

Укажите ошибку в понимании кода для получении Reader из URL:
[syntax=java]
in = new BufferedReader ( new InputStreamReader(response.getEntity().getContent (),"utf-8")); //получаем в буфер содержимое сайта
String inputLine = "";
StringBuilder websiteContent = new StringBuilder(); // создаем строку символов
while ((inputLine = in.readLine()) != null) { //пока строки не кончились делаем
websiteContent.append(inputLine); // добавляем из потока в строку
websiteContent.append('\n'); // а зачем перевод каретки?? т.е. дописывать переход на новую строчку?
[/syntax]
И почему нельзя напрямую подать в реадер? Хотя бы из BufferedReader

vsadmin
Сообщения: 4
Зарегистрирован: 16 сен 2013, 13:33

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение vsadmin » 04 ноя 2013, 15:11

Уже с ног сбился искать и ничего не нашел.
Мне чтоб пропарсить надо сохранить XML по сслыке в файл. Лучше конечно в R.xml, но что-то никто так не делат(я очень новичек).
Ну и информации о том как это сделать немогу найти. Может ли кто нибудь подсказать, как сохранить?
upd
пытался парсить на прямую по url вот так:
  • XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
    factory.setNamespaceAware(true);
    XmlPullParser xpp = factory.newPullParser();

    URL input = new URL("Собственно ссылка");
    xpp.setInput(input.openStream(), null);

    int eventType = xpp.getEventType();
    String currentTag = null;
    Integer id = null;
    String title = null;
Выдает ошибку : NetworkOnMainThreadException

Аватара пользователя
caHek2x
Сообщения: 35
Зарегистрирован: 04 сен 2012, 21:15

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение caHek2x » 28 дек 2013, 10:50

меня заинтересовал вопрос какой парсинг использовать ...
на данный момент использую парсинг для разбора курсов валют полученных из интернета ...
но в дальнейшем мне он еще пригодится для чата ... сообщения чата и тд будет в хмл ...
изначально делал такими методами:

Код: Выделить всё

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputSource is = new InputSource(new StringReader(strXML));
Document result = builder.parse(is);
NodeList nodes_Date = result.getElementsByTagName("item");
Element element_Date = (Element) nodes_Date.item(0);
....
я не знаю как правильно это называется поэтому куском кода кинул ...
потом меня чего то переклинило и я где то прочитал что это типо устаревший парсинг(хотя это вроде ошибочка) ... и надо использовать XmlPullParser, ну я и переделал все на него ... (кстати как показала практика он быстрее перебирает файл ... ну или я намудрил и не оптимально использовал первый способ)
теперь копаясь в данной ветке меня заинтересовало данное сообщение:
rezak90 писал(а):если большой объём xml файла то лучше использовать sax парсер чем dom, так как sax работает быстрее
кто может подробнее написать что лучше использовать ... и тд ... и насколько оптимально использовать XmlPullParser ... если говорить по удобству то он мне вполне подходит ...

Ник
Сообщения: 5
Зарегистрирован: 05 май 2014, 21:56

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Ник » 19 май 2014, 07:27

С парсером всё понятно, но возник такой вопрос, как можно записать данные в xml файл?

AlexVinn
Сообщения: 81
Зарегистрирован: 04 апр 2014, 04:56

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение AlexVinn » 19 май 2014, 17:24

Как в этот парсер вставить файл, который уже находится в папке files ??? Или как вставить строку от сервера в которой находится небольшой XML ?
Всем заранее спасибо.
Тут должна быть подпись.

Viewer
Сообщения: 180
Зарегистрирован: 30 апр 2014, 11:42

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Viewer » 19 май 2014, 18:25

Если бы вы посмотрели документацию по XmlPullParser, то наверняка бы обратили внимание на приведенный там пример использования, где хорошо показано как создается XmlPullParser и как ему подаются данные для работы.
Ход ваших мыслей, возможно, был бы следующим:
xml данные загружаются с помощью xpp.setInput( new StringReader ( "<foo>Hello World!</foo>" ) );
Смотрим что это за метод
ага, значит на вход можно подавать InputStream либо Reader где их взять, если мы имеем файл? Здесь ключевые слова File, InputStream и Reader из этих слов напрашиваются словосочетания FileInputStream и FileReader
Снова смотрим в доки и Эврика! И то и другое есть в API Android
http://developer.android.com/reference/ ... tream.html
http://developer.android.com/reference/ ... eader.html
И надо же, какое совпадение )) - они являются наследниками наших InputStream и Reader соответственно, значит должны нам подойти.

Осталось только выбрать что больше нравится.

Еще, если посмотреть на пару постов выше, там форумчанин vsadmin пытался распарсить xml напрямую с Интерента, но видимо потому что "я очень новичек" он не сразу догадался, что исключение NetworkOnMainThreadException возникает из за того, что он пытается получить доступ в Интернет из UI-потока. Хоть ему никто тогда не ответил, но думаю что он наверняка разобрался сам.

Yurets
Сообщения: 48
Зарегистрирован: 06 май 2014, 19:07

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Yurets » 20 июл 2014, 23:10

Всем привет!
Пытаюсь парсить xml документ из sd-карты, который сам же и экспортировал, но постоянно вылетает в месте "start document"... точнее наоборот - не летит дальше - замкнутый цикл, хотя в чём проблема - понять не могу....
Посмотрите, пожалуйста, кто-нибудь, где я заплошал?

класс asynctask, где всё действие и происходит...

Код: Выделить всё

public class TaskImport extends AsyncTask<Void, Void, Integer> {

    final static String DIR_SD = "contacts";
    final static String FILE_NAME = "contacts.xml";

    String name, surname, birthday, sex, address, photoLink;

    Cursor taskCursor;
    Context ctx;
    int size;
    DB mDB; 
    File sdFile;

    String path;
    String data;
    String tagName;

    FileInputStream fis;

    public TaskImport(Context ctx){
        this.ctx = ctx;
    }

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/" + DIR_SD + "/" + FILE_NAME;
        sdFile = new File(path);

    }

    @Override
    protected Integer doInBackground(Void... params) {
        if(!sdFile.exists()){
            onCancelled();
            Toast.makeText(ctx, "File not exists or not found", Toast.LENGTH_SHORT).show();
            return null;
        }

        mDB = new DB(ctx);

        readXml();
        return size;
    }

    public void readXml(){

        ArrayList<String> userName = new ArrayList<String>();
        ArrayList<String> userSurname = new ArrayList<String>();
        ArrayList<String> userBirthday = new ArrayList<String>();
        ArrayList<String> userSex = new ArrayList<String>();
        ArrayList<String> userAddress = new ArrayList<String>();
        ArrayList<String> userPhoto = new ArrayList<String>();
        try {
            fis = new FileInputStream(sdFile);
            InputStreamReader isr = new InputStreamReader(fis);
            char[] inputBuffer = new char[fis.available()];
            isr.read(inputBuffer);
            data = new String (inputBuffer);
            isr.close();
            fis.close();
        }
        catch (FileNotFoundException e3) {
            e3.printStackTrace();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
        XmlPullParserFactory factory = null;
        try {
            factory = XmlPullParserFactory.newInstance();
        }
        catch (XmlPullParserException e2) {
            e2.printStackTrace();
        }
        factory.setNamespaceAware(true);
        XmlPullParser xpp = null;
        try {
            xpp = factory.newPullParser();
        }
        catch (XmlPullParserException e2) {
            e2.printStackTrace();
        }
        try {
            xpp.setInput(fis, new String(data));
        }
        catch (XmlPullParserException e1) {
            e1.printStackTrace();
        }
        int eventType = 0;
        try {
            eventType = xpp.getEventType();
        }
        catch (XmlPullParserException e1) {
            e1.printStackTrace();
        }
        while (eventType != XmlPullParser.END_DOCUMENT){
            if (eventType == XmlPullParser.START_DOCUMENT) {
                Log.d("phonebookLogs", "Start document");
            }
            else if (eventType == XmlPullParser.START_TAG) {
                tagName = xpp.getName();
                Log.d("phonebookLogs", "Start tag "+xpp.getName());
            }
            else if (eventType == XmlPullParser.END_TAG) {
                Log.d("phonebookLogs", "End tag "+xpp.getName());
            }
            else if(eventType == XmlPullParser.TEXT) {
                if(tagName.equals("name")){
                    userName.add(xpp.getText());
                }else if(tagName.equals("surname")){
                    userSurname.add(xpp.getText());
                }else if(tagName.equals("birthday")){
                    userBirthday.add(xpp.getText());
                }else if(tagName.equals("sex")){
                    userSex.add(xpp.getText());
                }else if(tagName.equals("address")){
                    userAddress.add(xpp.getText());
                }else if(tagName.equals("photoLink")){
                    userPhoto.add(xpp.getText());
                }else if(tagName.equals("data")){

                }
            }
            try {
                eventType = xpp.next();
            }
            catch (XmlPullParserException e) {
                e.printStackTrace();
            }
            catch (IOException e) {
                e.printStackTrace();
            }
        }

        size = userName.size();

        for(int i = 0; i < userName.size(); i++){
            name = userName.get(i);
            surname = userSurname.get(i);
            birthday = userBirthday.get(i);
            sex = userSex.get(i);
            address = userAddress.get(i);
            photoLink = userPhoto.get(i);
            int sexInt = Integer.parseInt(sex);
            mDB.insert(name, surname, birthday, sexInt, address, photoLink);
            Log.d("phonebookLogs", ""+name+"/"+surname+"/"+birthday+"/"+sex+"/"+address+"/"+photoLink);
        }
    }

    @Override
    protected void onPostExecute(Integer result) {
        super.onPostExecute(result);
        Log.d("phonebookLogs", "postexecute " + result);
        Toast.makeText(ctx, "Contacts (" + result + ") are imported successfully", 
                Toast.LENGTH_SHORT).show();
        mDB.closeConnection();
    }

}

и, собственно, вот что вылетает... и так бесконечно, пока телефон не отключу...

Код: Выделить всё

07-20 21:00:02.994: D/phonebookLogs(16031): Start document
07-20 21:00:02.994: W/System.err(16031): org.xmlpull.v1.XmlPullParserException: setInput() must be called first. (position:START_DOCUMENT null@1:1) 
07-20 21:00:02.994: W/System.err(16031):    at org.kxml2.io.KXmlParser.next(KXmlParser.java:319)
07-20 21:00:02.994: W/System.err(16031):    at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
07-20 21:00:02.994: W/System.err(16031):    at com.nixsolutions.phonebook.TaskImport.readXml(TaskImport.java:149)
07-20 21:00:02.994: W/System.err(16031):    at com.nixsolutions.phonebook.TaskImport.doInBackground(TaskImport.java:65)
07-20 21:00:02.994: W/System.err(16031):    at com.nixsolutions.phonebook.TaskImport.doInBackground(TaskImport.java:1)
07-20 21:00:02.994: W/System.err(16031):    at android.os.AsyncTask$2.call(AsyncTask.java:288)
07-20 21:00:02.994: W/System.err(16031):    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
07-20 21:00:02.994: W/System.err(16031):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
07-20 21:00:02.994: W/System.err(16031):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
07-20 21:00:02.994: W/System.err(16031):    at java.lang.Thread.run(Thread.java:841)
07-20 21:00:02.994: D/phonebookLogs(16031): Start document
07-20 21:00:02.994: W/System.err(16031): org.xmlpull.v1.XmlPullParserException: setInput() must be called first. (position:START_DOCUMENT null@1:1) 
07-20 21:00:02.994: W/System.err(16031):    at org.kxml2.io.KXmlParser.next(KXmlParser.java:319)
07-20 21:00:02.994: W/System.err(16031):    at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
07-20 21:00:02.994: W/System.err(16031):    at com.nixsolutions.phonebook.TaskImport.readXml(TaskImport.java:149)
07-20 21:00:02.994: W/System.err(16031):    at com.nixsolutions.phonebook.TaskImport.doInBackground(TaskImport.java:65)
07-20 21:00:02.994: W/System.err(16031):    at com.nixsolutions.phonebook.TaskImport.doInBackground(TaskImport.java:1)
07-20 21:00:02.994: W/System.err(16031):    at android.os.AsyncTask$2.call(AsyncTask.java:288)
07-20 21:00:02.994: W/System.err(16031):    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
07-20 21:00:02.994: W/System.err(16031):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
07-20 21:00:02.994: W/System.err(16031):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
07-20 21:00:02.994: W/System.err(16031):    at java.lang.Thread.run(Thread.java:841)
07-20 21:00:02.994: D/phonebookLogs(16031): Start document

qeinrich
Сообщения: 2
Зарегистрирован: 04 авг 2014, 23:52

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение qeinrich » 14 авг 2014, 18:51

Здравствуйте.
Большое спасибо за уроки с рабочими примерами и за данный урок в частности.

Такой вопрос: как правильно обрабатывать исключения парсера в случае ошибки в xml-файле? Т.е., если в xml ошибка (файл оборван посредине тега), приложение вываливается с табличкой "Ошибка приложения!", как этого избежать?

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение KamiSempai » 15 авг 2014, 13:11

qeinrich писал(а):Здравствуйте.
Большое спасибо за уроки с рабочими примерами и за данный урок в частности.

Такой вопрос: как правильно обрабатывать исключения парсера в случае ошибки в xml-файле? Т.е., если в xml ошибка (файл оборван посредине тега), приложение вываливается с табличкой "Ошибка приложения!", как этого избежать?
В случае ошибки в xml-файле произойдет исключение XmlPullParserException или IOException, а еще один из методов может вернуть null. Если предусмотреть все эти 3 случая, приложение не должно падать.
Кстати, в уроке XmlPullParserException и IOException отлавливаются но не обрабатываются.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

qeinrich
Сообщения: 2
Зарегистрирован: 04 авг 2014, 23:52

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение qeinrich » 17 авг 2014, 03:04

KamiSempai писал(а):В случае ошибки в xml-файле произойдет исключение XmlPullParserException или IOException, а еще один из методов может вернуть null. Если предусмотреть все эти 3 случая, приложение не должно падать.
Кстати, в уроке XmlPullParserException и IOException отлавливаются но не обрабатываются.
Именно так. Происходит XmlPullParserException, после чего прога вываливается.
Причем у меня обрабатывается много xml-файлов, и прога переходит к следующему, и вот на следующем она и вываливается с ошибкой.
А как правильно обработать XmlPullParserException, нигде не могу найти.

Ricci
Сообщения: 1
Зарегистрирован: 05 окт 2014, 18:41

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Ricci » 05 окт 2014, 18:55

koleso писал(а):

Код: Выделить всё

 XmlPullParser prepareXpp() throws XmlPullParserException, IOException {
                URL url = new URL( "http://levelup.accu-weather.com/widget/levelup/weather-data.asp?slat=59.678474&slon=30.461576&metric=1&LangId=25"); // ну например...
            XmlPullParserFactory parserCreator = XmlPullParserFactory.newInstance();
            XmlPullParser xpp = parserCreator.newPullParser();
            xpp.setInput(url.openStream(), null);
            return xpp;
          }
Я вот как только не пробовал - не получается. Eclipse ошибок не выдает, а при выполнении openStream() ВСЕГДА вылетает приложение.
Интернет в манифесте разрешен (кстати без него приложение не вылетает, но и не читает ничего).

Подскажите пожалуйста в какую сторону копать? три дня гугл напрягал - никак.

GoldfxTrader
Сообщения: 2
Зарегистрирован: 04 ноя 2014, 17:40

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение GoldfxTrader » 04 ноя 2014, 17:54

Здравствуйте. Подскажите как правильно получить данные с XML на основе примера с урока 79, если есть такая структура xml документа:

Код: Выделить всё

****
<item cbc:type="story" cbc:deptid="2.633" cbc:syndicate="true">
<title>
<![CDATA[
Election day in America: 7 things to watch in midterms
]]>
</title>
<link>
http://www.cbc.ca/news/world/election-day-in-america-7-things-to-watch-in-midterms-1.2822002?cmp=rss
</link>
<guid isPermaLink="false">1.2822002</guid>
<pubDate>Tue, 4 Nov 2014 05:00:00 EST</pubDate>
<author>Meagan Fitzpatrick</author>
<category>News/World</category>
<description>
<![CDATA[
<img title='U.S. President Barack Obama takes part in early voting at a polling station in Chicago, Illinois October 20, 2014. His party is at risk of losing control of the Senate today as Americans go to the polls in this year's midterm election.' height='259' alt='USA-OBAMA/' width='460' src='http://i.cbc.ca/1.2822057.1415036841!/fileImage/httpImage/image.jpg_gen/derivatives/16x9_460/usa-obama.jpg' /> <p>Americans will be marking ballots today for their representatives in Congress, in their state legislatures and governor's mansion, in their mayor's office and city halls and for many other elected offices. Here are a few things to watch for as the results come in tonight.</p>
]]>
</description>
</item>
***
с данного xml документа мне необходимы данные: title, pubDate, author, и изображение с description

Я только начинаю изучать программирование под Android так что не судите строго. Желательно разъяснить более подробно, т.к. многих нюансов не знаю.
Заранее спасибо за ответ!

GoldfxTrader
Сообщения: 2
Зарегистрирован: 04 ноя 2014, 17:40

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение GoldfxTrader » 05 ноя 2014, 19:07

Как разобрать секцию XML description:

Код: Выделить всё

<description>
<![CDATA[
<img title='Justin Bourque, 24, of Moncton, could be facing three consecutive life sentences, with no chance of parole for 75 years for the fatal shooting of three RCMP officers. But some experts are split as to whether his actions should be considered terrorist acts.' height='259' alt='Justin Bourque' width='460' src='http://i.cbc.ca/1.2668162.1414706182!/fileImage/httpImage/image.jpg_gen/derivatives/16x9_460/justin-bourque.jpg' /> <p>Justin Bourque has been sentenced to 75 years in prison with no chance of parole for killing three RCMP officers and wounding two others, a New Brunswick judge has ruled.</p>
]]>
</description>
с которой нужно получить изображение ссылка на которое размещена в теге? Если кто сможет разьяснить - предоставлю исходный код парсера.

Chucky47
Сообщения: 1
Зарегистрирован: 03 янв 2015, 20:49

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Chucky47 » 03 янв 2015, 20:52

вставил свой xml с яндекс новостей что делать с ковычками? (&quot)????

Джон-паяльник
Сообщения: 5
Зарегистрирован: 31 янв 2015, 20:34

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Джон-паяльник » 21 фев 2015, 02:19

А как можно парсить layout?
Допустим у RudioButton есть такой конструктор:

public RadioButton(Context context, AttributeSet attrs) {

}

Вот я и хочу туда передать attrs

RadioButton radioB=new RadioButton(this, attrs);

Как это сделать?

yura91
Сообщения: 265
Зарегистрирован: 22 авг 2014, 13:43

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение yura91 » 01 мар 2015, 15:32

я если я использую xml не из ресурсов а с инета или из файловой системы нужно распарсить xml документ как его передать xmlPullParser можете привести фрагмент кода??

Dalvin
Сообщения: 2
Зарегистрирован: 08 ноя 2015, 13:46

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Dalvin » 10 ноя 2015, 22:34

Доброго дня или вечера! Подскажите пожалуйста если нужно спарсить данные прямо с URL, то нужно воспользоваться вот этим doc = Jsoup.connect("http://site.com/").get(); и далее можно взять заголовок String title = doc.title(); в программе на Android Studio вывожу через textView, но это только заголовок, а если надо вывести, кусок текста в блоке или дату публикации текста? Подобный вопрос уже поднимали в другом примере, там использовался текст... <div class="info"><h3>Текст бла бла</h3> ХИТ!</div>
new Thread(new Runnable() {
public void run() {
Document doc = null;
try {
doc = Jsoup.connect("http://m.21vek.by").get();
} catch (IOException e) {

e.printStackTrace();
}

Elements popTovAll = doc.select("div.info");

for (int i = 0; i < popTovAll.size(); i++) {
Element temp = popTovAll.get(i);
Element temp2 = temp.select('h3');
list.add(temp2.text());

}
В моем случае нужен вывод в textView, мой пример выводит только заголовок сайта...
Document doc = null;//
try {

doc = Jsoup.connect("http://ria.ru/").get();
} catch (IOException e) {

e.printStackTrace();
}

if (doc!=null)
title = doc.title();
else
title = "Error";

return null;
}
...
textView.setText(title);// Вывод заголовка
Вот такие строки: Elements el = doc.select("h3.list_item_content"); или Elements el = doc.select(".list_item_content"); после try{ ... } catch {...}, не срабатывают.

Stranger
Сообщения: 3
Зарегистрирован: 22 мар 2016, 10:56

Re: Урок 79. XmlPullParser. Парсим XML

Сообщение Stranger » 29 мар 2016, 12:36

Добрый день,
в уроке написано как работать с файлом ресурса, а как быть, если у меня xml код уже загружен в переменную?
как ее обработать парсером, что за свойство?

в Андройдопрограмир. новичек еще..

Огромная благодраность за понятный будущий ответ!

Ответить