android xml 解析方法
private String singerCount="5"; public List<String> getSongerFromSongName(String songName) throws Exception { List<String> songers = null; XmlPullParser parser = Xml.newPullParser(); parser.setInput(getXml(songName) , "UTF-8"); int event = parser.getEventType(); while (event != XmlPullParser.END_DOCUMENT) { switch (event) { case XmlPullParser.START_DOCUMENT: songers = new ArrayList<String>(); break; case XmlPullParser.START_TAG: if ("name".equals(parser.getName())) { songers.add(parser.nextText()); } break; case XmlPullParser.END_TAG: break; } event = parser.next(); } return songers; } public InputStream getXml(String songName) throws Exception { String strUrl = "http://api.douban.com/music/subjects?tag=" + songName + "&start-index=1&max-results="+singerCount+"&apikey=0da34e8146d71dd228e9eb83d4855976"; ByteArrayInputStream stream = null; DefaultHttpClient httpclient = new DefaultHttpClient(); HttpGet httpget = new HttpGet(strUrl); ResponseHandler<String> responseHandler = new BasicResponseHandler(); String content = httpclient.execute(httpget , responseHandler); stream = new ByteArrayInputStream(content.getBytes()); return stream; }
httpGet 通信方式
DefaultHttpClient httpclient = new DefaultHttpClient(); HttpGet httpget = new HttpGet(url); HttpResponse response = httpclient.execute(httpget); if (response.getStatusLine().getStatusCode() == 200) { Log.i("ss" , EntityUtils.toString(response.getEntity())); }