通过URL获取网络资源

主类:

package com.ken.getUrl;			//声明包语句
import java.io.BufferedInputStream;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

import org.apache.http.util.ByteArrayBuffer;
import org.apache.http.util.EncodingUtils;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
public class Get_URL extends Activity {
	String stringURL = "http://192.168.1.100:8080/MyUrlSample/msg.txt";
	String bitmapURL = "http://192.168.1.10:8080/MyUrlSample/pic.png";
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button btn = (Button)findViewById(R.id.btn);		//获得Button控件对象
        btn.setOnClickListener(new OnClickListener() {

			public void onClick(View v) {
				// TODO Auto-generated method stub
				getStringURLResources();		//获得字符串资源
				getBitmapURLResources();		//获得图片资源
			}

        	
		});
    }
    //方法,根据指定URL字符串获取网络资源
    public void getStringURLResources(){
    	try{
    		URL myUrl = new URL(stringURL);
    		URLConnection myConn = myUrl.openConnection();	//打开连接
    		InputStream in = myConn.getInputStream();		//获取输入流
    		BufferedInputStream bis = new BufferedInputStream(in);//获取BufferedInputStream对象
    		ByteArrayBuffer baf = new ByteArrayBuffer(bis.available());
    		int data = 0;
    		while((data = bis.read())!= -1){		//读取BufferedInputStream中数据
    			baf.append((byte)data);				//将数据读取到ByteArrayBuffer中
    		}
    		String msg = EncodingUtils.getString(baf.toByteArray(), "UTF-8");	//转换为字符串
    		EditText et = (EditText)findViewById(R.id.et);		//获得EditText对象
    		et.setText(msg);						//设置EditText控件中的内容
    	}
    	catch(Exception e){
    		e.printStackTrace();
    	}    
    }
    public void getBitmapURLResources(){
    	try{
    		URL myUrl = new URL(bitmapURL);	//创建URL对象
    		URLConnection myConn = myUrl.openConnection();			//打开连接
    		InputStream in = myConn.getInputStream();			//获得InputStream对象
    		Bitmap bmp = BitmapFactory.decodeStream(in);		//创建Bitmap
    		ImageView iv = (ImageView)findViewById(R.id.iv);	//获得ImageView对象
    		iv.setImageBitmap(bmp);					//设置ImageView显示的内容
    	}
    	catch(Exception e){
    		e.printStackTrace();
    	}
    }
}


 

man.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
 android:layout_height="fill_parent" 
 android:layout_width="fill_parent"
  android:orientation="vertical" 
  xmlns:android="http://schemas.android.com/apk/res/android"> 
<!-- 声明一个线性布局 -->
 <EditText 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     android:layout_gravity="center_horizontal"
     android:cursorVisible="false"
      android:editable="false"
      android:id="@+id/et"/> 
<!-- 声明一个EditText控件 -->
 <ImageView 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:id="@+id/iv"/> 
<!-- 声明一个ImageView控件 -->

 <Button 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     android:layout_gravity="center_horizontal" 
     android:id="@+id/btn"
     android:text="@string/btn"/> 
<!-- 声明一个Button控件 -->
 </LinearLayout>


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值