Проанализировать объект, который содержит данные XML

Я создаю приложение для Android, где я подключаюсь к базе данных через веб-сервисы. Когда я отправляю информацию через веб-сервисы, я получаю результат в формате xml, затем я преобразую его в строку и отображаю в тексте редактирования, вот так

Handler uiThreadHandler = new Handler() {
            public void handleMessage(Message msg) {
                Object o = msg.obj;

                EditText textIn = (EditText)((Activity)context).findViewById(R.id.editTextDoSelectResult);
                textIn.setText(o.toString());

                System.out.println(o.toString());
            }
        };

        Message msg = uiThreadHandler.obtainMessage();
        msg.obj = result;
        msg.arg1 = sid;
        uiThreadHandler.sendMessage(msg);
        }

Я пытаюсь разобрать XML, чтобы получить конкретные значения из результата XML и отобразить его в соответствующем поле, я думаю, что я должен следовать что-то вроде этого

http://developer.android.com/training/basics/network-ops/xml.html

У меня вопрос, как я могу использовать результат XML, который я получаю в своем коде в качестве входного потока в XmlPullParser

если есть, я могу улучшить этот вопрос, пожалуйста, дайте мне знать

1 ответ

Может быть, это поможет вам.

Чтобы получить входящий поток:

private static InputStream downloadUrl(String urlString) throws IOException {
    URL url = new URL(urlString);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setReadTimeout(10000 /* milliseconds */);
    conn.setConnectTimeout(15000 /* milliseconds */);
    conn.setRequestMethod("GET");
    conn.setDoInput(true);
    // Starts the query
    conn.connect();
    return conn.getInputStream();
}

преобразовать входной поток в строку:

private static String convertStreamToString(InputStream is) {
    ByteArrayOutputStream oas = new ByteArrayOutputStream();
    copyStream(is, oas);
    String t = oas.toString();
    try {
        oas.close();
        oas = null;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return t;
}

установить для редактирования текста:

...
youredittext.setText(convertStreamToString(downloadUrl(your_url)));
...
Другие вопросы по тегам