在编写Android应用时,有时会需要从Internet上获取数据。 包括获取网页数据和文件数据。
1.获取网络上的网页数据 通过HttpURLConnection对象,从网络中获取网页数据.
URL url = new URL("http://www.sina.com"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5* 1000);//设置连接超时 conn.setRequestMethod("GET");//以get方式发起请求 if (conn.getResponseCode() != 200) throw new RuntimeException("请求url失败"); InputStream is = conn.getInputStream();//得到网络返回的输入流 String result = readData(is, "GBK"); conn.disconnect();


//第一个参数为输入流,第二个参数为字符集编码public static String readData(InputStream inSream, String charsetName) throws Exception{ByteArrayOutputStream outStream = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = -1;while( (len = inSream.read(buffer)) != -1 ){outStream.write(buffer, 0, len);}byte[] data = outStream.toByteArray();outStream.close();inSream.close();return new String(data, charsetName);}


2.获取网络上的文件数据
通过HttpURLConnection对象,可以从网络中获取文件数据.
URL url = new URL("http://photocdn.sina.com/xxx");//文件地址HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setConnectTimeout(5* 1000);conn.setRequestMethod("GET");if (conn.getResponseCode() != 200) throw new RuntimeException("请求url失败");InputStream is = conn.getInputStream();readAsFile(is, "Img269812337.jpg");public static void readAsFile(InputStream inSream, File file) throws Exception{FileOutputStream outStream = new FileOutputStream(file);byte[] buffer = new byte[1024];int len = -1;while( (len = inSream.read(buffer)) != -1 ){outStream.write(buffer, 0, len);}  outStream.close();inSream.close();}




更多相关文章

  1. SpringBoot 2.0 中 HikariCP 数据库连接池原理解析
  2. 一句话锁定MySQL数据占用元凶
  3. Android(安卓)与SQlite 数据库操作(新手步骤)
  4. Android之通过ContentProvider实现两个app(进程间)间通信以及函
  5. Android中,对SQLite的‘批处理’操作
  6. Android(安卓)onAttach 的使用
  7. [已解决]Android(安卓)ListView EditView 获取焦点问题
  8. android Configuration系统设置 .
  9. Android不使用第三方升级库实现应用升级

随机推荐

  1. 在Android的c/c++代码中使用LOG
  2. 为Android(和其他移动平台)安装MoSync
  3. Android应用程序注冊广播接收器(registerR
  4. IDC:Android市场占有率仍未超越Symbian
  5. Android编程之manifest上遇到的错误
  6. Android(安卓)JNI开发入门之二(javah命令
  7. html5游戏移植到android并打包成apk,加广
  8. android中Invalidate和postInvalidate的
  9. Android使用Opencv图片处理 Mat与Bitmap
  10. Android系统的架构