窗体一

package Http.View;import java.io.IOException;import java.io.StringReader;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import javax.xml.parsers.SAXParserFactory;import mars.modle.Mp3Info;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.HttpStatus;import org.apache.http.NameValuePair;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.message.BasicNameValuePair;import org.apache.http.util.EntityUtils;import org.xml.sax.InputSource;import org.xml.sax.XMLReader;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;public class Post extends Activity { TextView mTextView = null; @Override protected void onCreate(Bundle savedInstanceState)  {  // TODO Auto-generated method stub  super.onCreate(savedInstanceState);  setContentView(R.layout.post);     mTextView = (TextView)this.findViewById(R.id.my);        //http地址        String httpUrl = "http://wap.51tes.com/i.asmx/c";        //获得的数据        HttpPost httpRequest = new HttpPost(httpUrl);        //使用NameValuePair来保存要传递的Post数据        List<NameValuePair> params = new ArrayList<NameValuePair>();        //添加需要的参数        params.add(new BasicNameValuePair("c1","wm"));        params.add(new BasicNameValuePair("c2","240*320"));        params.add(new BasicNameValuePair("c3","1.0"));        params.add(new BasicNameValuePair("c4","6365T"));        try        {         //设置字符集         HttpEntity httpentity = new UrlEncodedFormEntity(params,"utf8");         //请求HttpRequest         httpRequest.setEntity(httpentity);         //取得默认的HttpClient         HttpClient httpclient = new DefaultHttpClient();         //取得HttpResponse         HttpResponse httpResponse = httpclient.execute(httpRequest);         //请求成功         if(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK)         {          //取得返回的字符串          String strResult = EntityUtils.toString(httpResponse.getEntity());          mTextView.setText(strResult);          parse(strResult);         }         else         {          mTextView.setText("请求错误");         }        }        catch(ClientProtocolException e)        {         mTextView.setText(e.getMessage().toString());        }     catch(IOException e)     {      mTextView.setText(e.getMessage().toString());     }     catch(Exception e)     {      mTextView.setText(e.getMessage().toString());     }  //设置按键事件监听        Button button_Back = (Button)findViewById(R.id.Button_Back_POST);        /*监听Button的时间信息*/        button_Back.setOnClickListener(new Button.OnClickListener()        {         public void onClick(View v)         {          /*新建一个Intent对象*/          Intent intent = new Intent();          /*指定intent要启动的类*/          intent.setClass(Post.this, Http.class);          /*启动一个新的Activity*/          startActivity(intent);          /*关闭当前的Activity*/          Post.this.finish();         }        }); }  private List<Mp3Info> parse(String xmlStr)  {      SAXParserFactory  saxParserFactory = SAXParserFactory.newInstance();      List<Mp3Info> infos = new ArrayList<Mp3Info>();      try      {   XMLReader xmlReader = saxParserFactory.newSAXParser().getXMLReader();   MyContentHandler mp3ListContentHandler = new MyContentHandler(infos);   xmlReader.setContentHandler(mp3ListContentHandler);   xmlReader.parse(new InputSource(new StringReader(xmlStr)));    for(Iterator<Mp3Info> iterator = infos.iterator();iterator.hasNext();)   {    Mp3Info mp3Info = iterator.next();    System.out.println(mp3Info);   }      }      catch(Exception e)  {   e.printStackTrace();  }  return infos;  }}

窗体2

package Http.View;import java.util.List;import mars.modle.Mp3Info;import org.xml.sax.Attributes;import org.xml.sax.SAXException;import org.xml.sax.helpers.DefaultHandler;public class MyContentHandler extends DefaultHandler{ private List<Mp3Info> infos = null; public MyContentHandler(List<Mp3Info> infos)  {  super();  this.infos = infos; } public List<Mp3Info> getInfos()  {  return infos; } public void setInfos(List<Mp3Info> infos)  {  this.infos = infos; } private Mp3Info mp3Info = null; private String tagName;    public void startDocument() throws SAXException    {         }    public void endDocument() throws SAXException    {         }    public void startElement(String nameSpaceURI,String localName, String qName, Attributes attr) throws SAXException    {     this.tagName = localName;  if(localName.equals("E"))  {   mp3Info = new Mp3Info();  }    }    public void endElement(String nameSpaceURI,String localName, String qName, Attributes attr) throws SAXException    {  if(qName.equals("E"))  {   infos.add(mp3Info);  }     tagName = null;    }    public void characters (char[] ch, int start, int length) throws SAXException    {     String temp = new String (ch, start, length);     if(tagName.equals("E1"))     {      mp3Info.setE1(temp);     }     else if(tagName.equals("E2"))     {      mp3Info.setE2(temp);     }     else if(tagName.equals("E3"))     {      mp3Info.setE3(temp);     }     else if(tagName.equals("E4"))     {      mp3Info.setE4(temp);     }     else if(tagName.equals("E5"))     {      mp3Info.setE5(temp);     }    }} 

更多相关文章

  1. android取得系统时间
  2. Android使用Retrofit上传单个文件以及多个文件
  3. android 上传/下载 图片
  4. Android封装的HTTP请求组件
  5. Android(安卓)Activity生命周期
  6. Android以TelephonyManager取得話機狀態
  7. 【Android】Http请求
  8. Android使用Volloy进行JsonObjectRequest请求
  9. Android图片上传的工具类

随机推荐

  1. 样式通常以相同的组合出现:创建单个类还是
  2. 如何在Java Swing中的JPanel中呈现基本的
  3. 单个元素html上的多个类
  4. 如何使用jQuery在我的网站演示中自动填写
  5. JQuery基于元素的高度添加类
  6. HTML之表格篇——表格的嵌套
  7. 怎么动态设置html的canvas元素的尺寸?
  8. 如何在bootstrap中添加汉堡包菜单
  9. js去掉html标签和去掉字符串文本的所有的
  10. 钩子中获取IHTMLDocument2接口的问题