powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Android [игнор отключен] [закрыт для гостей] / Распарсить XML получая его из текста а не из фала ресурсов
4 сообщений из 4, страница 1 из 1
Распарсить XML получая его из текста а не из фала ресурсов
    #39452867
AndroidNeedHelp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу распарсить XML, текст которого приходит по почте, обрабатывается и заносится в SQLite DB
Соответственно, я его могу получить как String

Нашёл пример по работе с XML, но в этом и многих других XML берётся из ресурса, а у меня строка...
Что делать??
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
private String getEventsFromXML(Activity activity)
            throws XmlPullParserException, IOException {
        StringBuilder stringBuilder = new StringBuilder();
        Resources res = activity.getResources();
        XmlResourceParser xmlResourceParser = res.getXml(R.xml.aboutcats);
        xmlResourceParser.next();
        int eventType = xmlResourceParser.getEventType();
        while (eventType != XmlPullParser.END_DOCUMENT) {
            if (eventType == XmlPullParser.START_DOCUMENT) {
                stringBuilder.append("Начало XML");
            } else if (eventType == XmlPullParser.START_TAG) {
                stringBuilder.append("\nSTART_TAG: ").append(xmlResourceParser.getName());
            } else if (eventType == XmlPullParser.END_TAG) {
                stringBuilder.append("\nEND_TAG: ").append(xmlResourceParser.getName());
            } else if (eventType == XmlPullParser.TEXT) {
                stringBuilder.append("\nTEXT: ").append(xmlResourceParser.getText());
            }
            eventType = xmlResourceParser.next();
        }
        stringBuilder.append("\nКонец XML");

        return stringBuilder.toString();
    }



Нашёл здесь и ещё кое-где что можно ресурс представить как-то так:
Код: java
1.
InputSource InpS = new InputSource(new StringReader(sXML));


Но я не знаю как его применить!
У меня такой код:
Код: java
1.
2.
3.
4.
5.
6.
                    String sXML = cursor.getString(cursor.getColumnIndex("MsgBody"));
                    txtDebug.setText(sXML);

                    Resources RES = this.getResources();
                    InputSource InpS = new InputSource(new StringReader(sXML));
                    XmlResourceParser XmlRP = RES.getXml(R.xml.InpS);


Соответственно красным - это мои фантазии, которые конечно же выдают ошибку...
...
Рейтинг: 0 / 0
Распарсить XML получая его из текста а не из фала ресурсов
    #39452904
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начни отсюда http://stackoverflow.com/questions/4436923/xml-string-parsing-in-android

Код: java
1.
2.
3.
4.
String xml ="valid xml here";
InputStream is = new ByteArrayInputStream(xml.getBytes("UTF-8"));

dom = builder.parse(is);



А после: https://www.google.com/search?q=android read xml from string
...
Рейтинг: 0 / 0
Распарсить XML получая его из текста а не из фала ресурсов
    #39452974
AndroidNeedHelp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

Спасибо!!!
Сделал так:
Код: java
1.
2.
3.
4.
5.
6.
                    String sXML = cursor.getString(cursor.getColumnIndex("MsgBody"));
                    DocumentBuilderFactory xmlDBF = DocumentBuilderFactory.newInstance();
                    DocumentBuilder xmlDB = xmlDBF.newDocumentBuilder();
                    StringReader xmlSR = new StringReader(sXML);
                    InputSource xmlIS = new InputSource(xmlSR);
                    Document xmlDOC = xmlDB.parse(xmlIS);


А не подскажете, XmlResourceParser только ресурс воспринимает? ЕМУ никак нельзя текст передать?


Как же всё через жопу в этой джаве... сто раз пожалел что связался
...
Рейтинг: 0 / 0
Распарсить XML получая его из текста а не из фала ресурсов
    #39452977
AndroidNeedHelp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndroidNeedHelpА не подскажете, XmlResourceParser только ресурс воспринимает? ЕМУ никак нельзя текст передать?
Сам осознал - это же Xml Resource Parser - предназначенный для ресурса
Всё, глупый вопрос был
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Android [игнор отключен] [закрыт для гостей] / Распарсить XML получая его из текста а не из фала ресурсов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]