Getting Data From the Web (URLConnection via http)

Getting Data From the Web (URLConnection via http)



What you will learn: You will learn how to download files/data from any URL (useful for reading the returned xml-data from Web2.0-APIs)

Question Problems/Questions: Write it right below...

Difficulty: 1.5 of 5 Smile

What it will look like:



Description:
0.) We will use just URL, URLConnection and InputStreams to receive data from a txt-file via http from the web. (works with any other dynamic url, too Exclamation like the Google Weather API http://www.google.com/ig/api?weather=Schriesheim,Germany )

This is the full Code:

Java:
package org. anddev. android. getdatafromtheweb;

import java. io. BufferedInputStream;
import java. io. InputStream;
import java. net. URL;
import java. net. URLConnection;

import org. apache. http. util. ByteArrayBuffer;

import android. app. Activity;
import android. os. Bundle;
import android. widget. TextView;

public  class GetDataFromTheWeb  extends Activity  {
@Override
public  void onCreate (Bundle icicle )  {
super. onCreate (icicle );

/* We will show the data we read in a TextView. */
TextView tv =  new TextView ( this );

/* Will be filled and displayed later. */
String myString =  null;
try  {
/* Define the URL we want to load data from. */
URL myURL =  new  URL (
"http://www.anddev.org/images/tut/basic/getdatafromtheweb/loadme.txt" );
/* Open a connection to that URL. */
URLConnection ucon = myURL. openConnection ( );

/* Define InputStreams to read 
* from the URLConnection. */

InputStream is = ucon. getInputStream ( );
BufferedInputStream bis =  new  BufferedInputStream (is );

/* Read bytes to the Buffer until 
* there is nothing more to read(-1). */

ByteArrayBuffer baf =  new ByteArrayBuffer ( 50 );
int current =  0;
while ( (current = bis. read ( ) ) !=  -1 ) {
baf. append ( ( byte )current );
}

/* Convert the Bytes read to a String. */
myString =  new  String (baf. toByteArray ( ) );
}  catch  ( Exception e )  {
/* On any Error we want to display it. */
myString = e. getMessage ( );
}
/* Show the String on the GUI. */
tv. setText (myString );
this. setContentView (tv );
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值