获取指定网址的图片:
获取指定网址的html源码,这里是搜狐的网址举例。
MainActivity
[
java]
package com.luku.netImage;
import com.luku.Junit.testJunit;
import
Android.app.Activity;
import
Android.content.Intent;
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;
import
Android.widget.Toast;
public class MainActivity extends Activity
{
Button getImagebutton;
EditText imagePatheditText;
ImageView imageView;
Button exitbButton;
Button gethtml;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
getImagebutton=(Button)findViewById(R.id.getImage);
gethtml=(Button)findViewById(R.id.gethtml);
exitbButton=(Button)findViewById(R.id.exit);
imagePatheditText=(EditText)findViewById(R.id.ImagePath);
imageView=(ImageView)findViewById(R.id.imageView);
getImagebutton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
try
{
byte[] data=testJunit.testGetImage(imagePatheditText.getText().toString());
Bitmap bm=BitmapFactory.decodeByteArray(data, 0, data.length);
imageView.setImageBitmap(bm);
} catch (Exception e)
{
Toast.makeText(MainActivity.this, "获取图片失败", Toast.LENGTH_SHORT);
}
}
});
gethtml.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Intent intent=new Intent(MainActivity.this, SecondActivity.class);
MainActivity.this.startActivity(intent);
}
});
exitbButton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Android.os.Process.killProcess(
Android.os.Process.myPid());
}
});
}
}
package com.luku.netImage;
import com.luku.Junit.testJunit;
import
Android.app.Activity;
import
Android.content.Intent;
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;
import
Android.widget.Toast;
public class MainActivity extends Activity
{
Button getImagebutton;
EditText imagePatheditText;
ImageView imageView;
Button exitbButton;
Button gethtml;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
getImagebutton=(Button)findViewById(R.id.getImage);
gethtml=(Button)findViewById(R.id.gethtml);
exitbButton=(Button)findViewById(R.id.exit);
imagePatheditText=(EditText)findViewById(R.id.ImagePath);
imageView=(ImageView)findViewById(R.id.imageView);
getImagebutton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
try
{
byte[] data=testJunit.testGetImage(imagePatheditText.getText().toString());
Bitmap bm=BitmapFactory.decodeByteArray(data, 0, data.length);
imageView.setImageBitmap(bm);
} catch (Exception e)
{
Toast.makeText(MainActivity.this, "获取图片失败", Toast.LENGTH_SHORT);
}
}
});
gethtml.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Intent intent=new Intent(MainActivity.this, SecondActivity.class);
MainActivity.this.startActivity(intent);
}
});
exitbButton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Android.os.Process.killProcess(
Android.os.Process.myPid());
}
});
}
}
[
java]
package com.luku.netImage;
import com.luku.Junit.testJunit;
import
Android.app.Activity;
import
Android.os.Bundle;
import
Android.view.View;
import
Android.view.View.OnClickListener;
import
Android.widget.Button;
import
Android.widget.TextView;
public class SecondActivity extends Activity
{
Button backbButton;
TextView htmlTextView;
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
backbButton=(Button)findViewById(R.id.back);
htmlTextView=(TextView)findViewById(R.id.htmlView);
try
{
htmlTextView.setText(new String(testJunit.testGetHtml()));
} catch (Exception e)
{
e.printStackTrace();
}
backbButton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
SecondActivity.this.finish();
}
});
}
}
package com.luku.netImage;
import com.luku.Junit.testJunit;
import
Android.app.Activity;
import
Android.os.Bundle;
import
Android.view.View;
import
Android.view.View.OnClickListener;
import
Android.widget.Button;
import
Android.widget.TextView;
public class SecondActivity extends Activity
{
Button backbButton;
TextView htmlTextView;
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
backbButton=(Button)findViewById(R.id.back);
htmlTextView=(TextView)findViewById(R.id.htmlView);
try
{
htmlTextView.setText(new String(testJunit.testGetHtml()));
} catch (Exception e)
{
e.printStackTrace();
}
backbButton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
SecondActivity.this.finish();
}
});
}
}
[
java]
package com.luku.Junit;
import
java.io.ByteArrayOutputStream;
import
java.io.InputStream;
import
java.net.HttpURLConnection;
import
java.net.URL;
public class testJunit
{
/**
* 读取数据
* @param inputStream
* @return
* @throws Exception
*/
public static byte[] readStream(InputStream inputStream) throws Exception
{
byte[] buffer=new byte[1024];
int len=-1;
ByteArrayOutputStream byteArrayOutputStream=new ByteArrayOutputStream();
while((len=inputStream.read(buffer))!=-1)
{
byteArrayOutputStream.write(buffer,0,len);
}
inputStream.close();
byteArrayOutputStream.close();
return byteArrayOutputStream.toByteArray();
}
/**
* 获取网上图片
* @throws Exception
*/
public static byte[] testGetImage(String path) throws Exception
{
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(6*1000); //设置链接超时时间6s
conn.setRequestMethod("GET");
if(conn.getResponseCode()==200)
{
InputStream inputStream=conn.getInputStream();
return readStream(inputStream);
}
return null;
}
/**
* 获取网址的html
* @throws Exception
*/
public static byte[] testGetHtml() throws Exception
{
String urlpath="http://www.sohu.com/";
URL url=new URL(urlpath);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(6*1000); //设置链接超时时间6s
conn.setRequestMethod("GET");
if(conn.getResponseCode()==200)
{
InputStream inputStream=conn.getInputStream();
byte[] data=readStream(inputStream);
return data;
}
return null;
}
}
package com.luku.Junit;
import
java.io.ByteArrayOutputStream;
import
java.io.InputStream;
import
java.net.HttpURLConnection;
import
java.net.URL;
public class testJunit
{
/**
* 读取数据
* @param inputStream
* @return
* @throws Exception
*/
public static byte[] readStream(InputStream inputStream) throws Exception
{
byte[] buffer=new byte[1024];
int len=-1;
ByteArrayOutputStream byteArrayOutputStream=new ByteArrayOutputStream();
while((len=inputStream.read(buffer))!=-1)
{
byteArrayOutputStream.write(buffer,0,len);
}
inputStream.close();
byteArrayOutputStream.close();
return byteArrayOutputStream.toByteArray();
}
/**
* 获取网上图片
* @throws Exception
*/
public static byte[] testGetImage(String path) throws Exception
{
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(6*1000); //设置链接超时时间6s
conn.setRequestMethod("GET");
if(conn.getResponseCode()==200)
{
InputStream inputStream=conn.getInputStream();
return readStream(inputStream);
}
return null;
}
/**
* 获取网址的html
* @throws Exception
*/
public static byte[] testGetHtml() throws Exception
{
String urlpath="http://www.sohu.com/";
URL url=new URL(urlpath);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(6*1000); //设置链接超时时间6s
conn.setRequestMethod("GET");
if(conn.getResponseCode()==200)
{
InputStream inputStream=conn.getInputStream();
byte[] data=readStream(inputStream);
return data;
}
return null;
}
}
main.xml
[
java]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:orientation="vertical"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
>
<TextView
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:text="图片路径"
Android:textSize="20sp"
/>
<EditText
Android:layout_width="match_parent"
Android:id="@+id/ImagePath"
Android:layout_height="wrap_content"
Android:text="http://avatar.csdn.net/C/9/A/1_yf210yf.jpg"></EditText>
<LinearLayout
Android:id="@+id/linearLayout1"
Android:layout_height="wrap_content"
Android:layout_width="match_parent">
<Button
Android:text="获取图片"
Android:layout_width="wrap_content"
Android:id="@+id/getImage"
Android:layout_height="wrap_content"></Button>
<Button
Android:text="获取html源码"
Android:id="@+id/gethtml"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></Button>
</LinearLayout>
<ImageView
Android:id="@+id/imageView"
Android:layout_height="wrap_content"
Android:layout_width="wrap_content"></ImageView>
<Button
Android:text="退出"
Android:id="@+id/exit"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></Button>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:orientation="vertical"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
>
<TextView
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:text="图片路径"
Android:textSize="20sp"
/>
<EditText
Android:layout_width="match_parent"
Android:id="@+id/ImagePath"
Android:layout_height="wrap_content"
Android:text="http://avatar.csdn.net/C/9/A/1_yf210yf.jpg"></EditText>
<LinearLayout
Android:id="@+id/linearLayout1"
Android:layout_height="wrap_content"
Android:layout_width="match_parent">
<Button
Android:text="获取图片"
Android:layout_width="wrap_content"
Android:id="@+id/getImage"
Android:layout_height="wrap_content"></Button>
<Button
Android:text="获取html源码"
Android:id="@+id/gethtml"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></Button>
</LinearLayout>
<ImageView
Android:id="@+id/imageView"
Android:layout_height="wrap_content"
Android:layout_width="wrap_content"></ImageView>
<Button
Android:text="退出"
Android:id="@+id/exit"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></Button>
</LinearLayout>
second.xml
[
java]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:orientation="vertical"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
>
<Button
Android:text="返回"
Android:id="@+id/back"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></Button>
<ScrollView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<TextView
Android:id="@+id/htmlView"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></TextView>
</ScrollView>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
Android:orientation="vertical"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
>
<Button
Android:text="返回"
Android:id="@+id/back"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></Button>
<ScrollView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<TextView
Android:id="@+id/htmlView"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"></TextView>
</ScrollView>
</LinearLayout>
[
java]
<manifest xmlns:
Android="http://schemas.
Android.com/apk/res/
Android"
package="com.luku.netImage"
Android:versionCode="1"
Android:versionName="1.0">
<uses-sdk
Android:minSdkVersion="8" />
<uses-permission
Android:name="
Android.permission.
interNET"></uses-permission>
<application
Android:icon="@drawable/icon"
Android:label="@string/app_name">
<activity
Android:name=".MainActivity"
Android:label="@string/app_name">
<intent-filter>
<action
Android:name="
Android.intent.action.MAIN" />
<category
Android:name="
Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
Android:name=".SecondActivity"
Android:label="@string/app_name">
</activity>
</application>
</manifest>