zoukankan      html  css  js  c++  java
  • Android网络图片查看器

    网络图片查看器
    输入网络图片路径。点击查看把web应用的图片显示在手机上
    MainActivity
    {
     EditText pathText=(EditText) this.findViewById(R.id.imagepath);
     Button button=(Button) this.findViewById(R.id.button);
     ImageView imageView = (ImageView) this.findViewById(R.id.imageView);
     button.setOnClickListener(new ButtonClickListener());
     }
     private static class ButtonClickListener implements View.OnClickListener
     {
       public void onClick(View v)   
       {
         String path = pathText.getText().toString();
    try{
    byte[] data = ImageService.getImage(path);  //得到图片后以字节数组来存放图片数据,得到图片的过程为业务service
         Bitmap bitmap = BitmapFactory.decodeByteArray(data,0,data.length);
    imageView.setImageBitmap(bitmap); //显示图片
         }catch (Exception e)
    {
      e.printStackTrace();
      Toast.makeText(getApplicationContext(),R.string.error,1).show();
    }
      }
     }
     /*获取网络图片数据*/
     public class ImageService
     {
       public static byte[] getImage(String path) throws Exception
       {
         URL url = new URL(path);
    HttpURLConnection conn=(HttpURLConnection) url.openConnection(); //基于HTTP协议连接对象
    conn.setConnectTimeout(5000);
    conn.setRequestMethod("GET");
    if(conn.getResponseCode() == 200)     //推断请求是否成功
    InputStream inStream = conn.getInputStream();
    return StreamTool.read(inStream);    //封装工具类,从流里面读取二进制数据
       }
     }
     
     public class StreamTool
     {
       //读取流中的数据
       public static byte[] read(InputStream inStream) throws Exception
       {
         ByteArrayOutputStream outStream = new ByteArrayOutputStream();
    byte[] buffer = new byte[1024];
    int len=0;
    while( (len = inStream.read(buffer)) !=-1)
    {
      outStream.write(buffer,0,len);
    }
    inStream.close();
    return outStream.toByteArray();
       }
     }
     
     服务端Dynamic Web Project
     存放一张图片,启动server。http://ip:8080/web/gg.gif 
  • 相关阅读:
    C#:类的学习
    SilverLight xaml页面跳转方法
    C#对象生命周期(转载)
    jquery常用的方法
    关于Java日期简单应用
    Compilingphpwithcrypt()
    SSI使用详解
    实例解析:从IIS的ASP迁移到APACHE的PHP
    三步搞定phpwind的静态化部署
    Informix Dynamic Server 中的分布式事务
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/5075609.html
Copyright © 2011-2022 走看看