• 25_Android_网络通信之资讯客户端(下)


    接(上)的代码。Android客户端代码如下:

    public class VideoActivity extends Activity {
    	private Button btn_videonews;
    	private ListView videoList;
    	private List<News> newsList;
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    	
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.videonews);
    		btn_videonews = (Button) findViewById(R.id.Btn_down_news);
    		videoList = (ListView) findViewById(R.id.Lv_videonews);
    		
    		  btn_videonews.setOnClickListener(new OnClickListener() {
    		  
    		 @Override public void onClick(View v) {
    		
    		try {
    			URL url = new URL("http://111.114.116.114:8080/Test/ListServlet");
    			HttpURLConnection httpURLConnection = (HttpURLConnection) url
    					.openConnection();
    			httpURLConnection.setReadTimeout(5000);
    		
    			httpURLConnection.setRequestMethod("GET");
    			if (httpURLConnection.getResponseCode() == 200) {
    
    				InputStream inputStream = httpURLConnection.getInputStream();
    			newsList = parseXML(inputStream);
    				List<HashMap<String, Object>> data = new ArrayList<HashMap<String, Object>>();
    				for (News news : newsList) {
    					HashMap<String, Object> item = new HashMap<String, Object>();
    					item.put("id", news.getId());
    					item.put("name", news.getName());
    					item.put("timeLength", news.getTimeLength());
    					data.add(item);
    				}
    				SimpleAdapter simpleAdapter = new SimpleAdapter(
    						VideoActivity.this, data, R.layout.itme_news,
    
    						new String[] { "name", "timeLength" }, new int[] {
    								R.id.news_name, R.id.news_timeLength });
    				videoList.setAdapter(simpleAdapter);
    
    			}
    
    		} catch (Exception e) {
    
    			e.printStackTrace();
    		}
    
    	}
    
    	 });
    
    	 }
    
    	private List<News> parseXML(InputStream inputStream) throws Exception {
    
    		List<News> newsList = new ArrayList<News>();
    		News news = null;
    		XmlPullParser parser = Xml.newPullParser();
    		parser.setInput(inputStream, "UTF-8");
    		int event = parser.getEventType();
    		while (event != XmlPullParser.END_DOCUMENT) {
    			switch (event) {
    			case XmlPullParser.START_TAG:
    				if ("id".equals(parser.getName())) {
    					news = new News();
    					news.setId(new Integer(parser.nextText()));
    				} else if ("name".equals(parser.getName())) {
    					news.setName(parser.nextText());
    				} else if ("timeLength".equals(parser.getName())) {
    					news.setTimeLength(new Integer(parser.nextText()));
    				}
    				break;
    			case XmlPullParser.END_TAG:// 每一个带斜杠的都是endtag
    				if ("news".equals(parser.getName())) {
    					newsList.add(news);
    					news = null;
    
    				}
    				break;
    			default:
    				break;
    			}
    			event = parser.next();// 不要忘了这句哟~
    
    		}
    		Toast.makeText(this, "连接成功.200" + newsList.size(), 1000).show();
    		return newsList;
    
    	}
    }



  • 相关阅读:
    ToString格式大全
    C#栈的实现(数制转换)
    C# 二进制,十进制,十六进制 互转
    C#单向循环列表 解决 约瑟夫问题
    序列化和反序列化
    C#单向链表的实现
    C#实现二叉树遍历
    c#如何将一个整数转换二进制,并进行位运算
    2.ASP.NET AJAx架构客户端框架的简单实现
    1.使用XMLHttPRequest控件异步获取数据
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3098145.html
Copyright © 2020-2023  润新知