【问题标题】:parse an object that contains xml data解析包含 xml 数据的对象
【发布时间】:2023-03-22 03:20:01
【问题描述】:

我正在构建一个 Android 应用程序,通过 Web 服务连接到数据库。当我通过 Web 服务发送信息时,我得到了一个 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 中的输入流

如果有什么我可以改进的,请告诉我

【问题讨论】:

  • 嗯,您提供的链接不是已经为您提供了一个非常好的教程,完全符合您的要求吗?
  • 我在问如何使用我从该教程中的代码中获得的结果,因为该教程没有告诉您如何获取输入
  • 输入你的意思,如何获取输入流?
  • 是的,如何获取输入流
  • 页面最后一个代码块有个downloadUrl(String url)函数,返回输入流

标签: java android xml xml-parsing 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)));
...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多