从服务器获取数据(此处为图片获取)

public class MainActivity extends Activity {

protected static final int SUCCESS = 1;

private EditText et_id;

private ImageView img;

private Handler handler = new Handler() {

public void handleMessage(Message msg) {

switch (msg.what) {

case SUCCESS:

Bitmap bm = (Bitmap) msg.obj;

img.setImageBitmap(bm);

break;

default:

break;

}

}

};

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

et_id = (EditText) findViewById(R.id.et_id);

img = (ImageView) findViewById(R.id.iv_show);

}

public void downs(View v) {

//handler+message

//只要是耗时操作,都开辟新的线程

new Thread() {

public void run() {

Bitmap bm = downimg();

Message msg = new Message();

msg.obj = bm;

msg.what = SUCCESS;

handler.sendMessage(msg);

};

}.start();

}

public Bitmap downimg() {

String path = et_id.getText().toString().trim();

HttpURLConnection conn = null;

try {

conn = (HttpURLConnection) new URL(path).openConnection();

conn.setConnectTimeout(5000);

conn.setRequestMethod("GET");

if (conn.getResponseCode() == 200) {

InputStream in = conn.getInputStream();

byte[] b = Utils.write(in);

Bitmap bm = BitmapFactory.decodeByteArray(b, 0, b.length);

return bm;

} else {

Toast.makeText(getApplicationContext(), "请求失败", 2000).show();

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

if (conn != null) {

conn.disconnect();

}

}

return null;

}

}

public class Utils {

public static byte[] write(InputStream in) {

ByteArrayOutputStream out = new ByteArrayOutputStream();

byte[] bytes = new byte[1024];

int len = 0;

try {

while ((len = in.read(bytes)) != -1) {

out.write(bytes, 0, len);

}

return out.toByteArray();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return null;

}

}

时间: 2024-11-17 13:27:25

从服务器获取数据(此处为图片获取)的相关文章

Vue--名称案例,监听键盘事件@keyup--实时获取数据-----watch属性方法获取

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

笔记-Ajax[4]-JSONP跨域获取数据。

JS的跨域:跨域名获取数据,a域名获取b域名中的数据. 解决跨域获取数据的方法也叫JSONP(JSON and Padding) JSONP方法: 1:服务器代理:XMLHttpRequest代理文件 2:script标签:jsonp(常用);//利用script标签的src引入外部文件的功能,src能够引入任何的文件的类型 3:location.hash方式:iframe 4:window.name方式 5:flash方式 6:html5的postMessage方式 例子:百度输入数据下拉框提

C#/.NET使用HttpWebRequest、SqlBulkCopy从API获取数据批量插入DB

小弟新手程序员一枚,代码技术和文章水平均不才.所写文章均为对自己所写所学代码的简单记录,可能对于老手程序员营养价值不高,望莫见怪. 我工作上有个需求:从某处API接口上获取数据(大约1W条而已)并插入到数据库中. 楼主刚毕业菜鸟,没做过批量插入操作.借助baidu搜索得知SqlBulkCopy可以实现.SqlBulkCopy相关的原理,我现在还没了解就不摆弄了,以后补上! (不要问为什么不用google,公司内网就连msdn.microsoft.com都不给上!另外我公司是开发C#/.NET的,

Http Get 从服务器中获取数据 存储到本地

package com.http.get; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import org.apache.http.message.BasicNameValu

Android:解决客户端从服务器上获取数据乱码的方法

向服务器发送HTTP请求,接收到的JSON包为response,用String content = EntityUtils.toString(response.getEntity(),"utf-8");解码还是出现了中文乱码,在后面加了 String name = new String(response.getBytes("iso-8859-1"), "UTF-8"); 也无济于事.想到服务器好像是用URLENCODER编了码的,怀着试一试的态度

客户端表单提交数据方式与服务器获取数据

表单提交数据的两种方式 表单form的提交有两种方式,一种是get的方法,通过超级链接后面的参数提交过来,一种是post ,通过Form表单提交过来. post方式: <form id="form1" name="form1" method="post" action="login.aspx"> <table width="501" border="0" align=&

百度搜索效果(服务器来获取数据)

百度搜索效果: AJAX代码: ajax本身不具有跨域功能,所以由服务器来访问数据: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>由服务器来获取数据</title> <style type="text/css"> * { margin: 0; padding: 0; list-style: none; } #

获取redis中所有的key,清空整个 Redis 服务器的数据

获取 redis 中所有的 key 可用使用 *. redis 127.0.0.1:6379> KEYS * Redis Flushall 命令用于清空整个 Redis 服务器的数据(删除所有数据库的所有 key ). 语法 redis Flushall 命令基本语法如下: redis 127.0.0.1:6379> FLUSHALL redis 127.0.0.1:6379> DBSIZE # 1 号数据库的 key 数量 (integer) 6 redis 127.0.0.1:637

使用图片跨域方式获取图片数据 使用 jsonp 方式跨域获取数据

使用图片跨域方式获取图片数据 server.get(`/mockImg`, (req, res, next) => { // 使用图片跨域方式获取图片数据 req.headers.origin && res.setHeader(`Access-Control-Allow-Origin`, req.headers.origin) res.setHeader(`content-type`, `image/gif`) res.setHeader(`data`, `image/gif`) v