解析包含xml数据的对象
问题描述:
我正在构建一个Android应用程序,我通过Web服务连接到数据库。当我通过Web服务发送信息时,我得到了一个XML结果,我然后将其转换为字符串,并将其显示在EditText上就这样解析包含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中的输入流
如果有反正我可以改善这个问题,请让我知道
答
也许这对你有帮助。
要获得的InputStream:
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();
}
转换的InputStream字符串:
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;
}
集到的EditText:
...
youredittext.setText(convertStreamToString(downloadUrl(your_url)));
...
嗯,你提供的链接不是给你一个非常好的教程,已经完全符合你的要求吗? – PrivatMamtora 2014-08-29 02:53:06
我在问如何使用我在本教程的代码中得到的结果,因为本教程没有告诉您如何获得输入 – Mash 2014-08-29 02:59:34
您的意思是输入,如何获取输入流? – PrivatMamtora 2014-08-29 03:03:14