java获取http:图片下载代码――android基础编
16lz
2021-01-26
大家肯定很奇怪,为什么我写一编文章,原因是这样,android双向通信会用到协议,有http:协议, ftp: 协议,tip/ip 协议
所以我写一个JAVA小程序,让大家有所了解一下获取的流程。
- packagecom.smart.test;
- importjava.io.ByteArrayOutputStream;
- importjava.io.File;
- importjava.io.FileOutputStream;
- importjava.io.InputStream;
- importjava.net.HttpURLConnection;
- importjava.net.URL;
- importorg.junit.Test;
- publicclassInternetTest{
- //读取的方法
- publicbyte[]readStream(InputStreaminStream)throwsException{
- ByteArrayOutputStreamoutstream=newByteArrayOutputStream();
- byte[]buffer=newbyte[1024];//用数据装
- intlen=-1;
- while((len=inStream.read(buffer))!=-1){
- outstream.write(buffer,0,len);
- }
- outstream.close();
- inStream.close();
- //关闭流一定要记得。
- returnoutstream.toByteArray();
- }
- @Test
- publicvoidgetImage()throwsException{
- //要下载的图片的地址,
- StringurlPath="http://t2.gstatic.com/images?q=tbn:9g03SOE7gW2gEM:http://dev.10086.cn/cmdn/supesite";
- URLurl=newURL(urlPath);//获取到路径
- //http协议连接对象
- HttpURLConnectionconn=(HttpURLConnection)url.openConnection();
- conn.setRequestMethod("GET");//这里是不能乱写的,详看API方法
- conn.setConnectTimeout(6*1000);
- //别超过10秒。
- System.out.println(conn.getResponseCode());
- if(conn.getResponseCode()==200){
- InputStreaminputStream=conn.getInputStream();
- byte[]data=readStream(inputStream);
- Filefile=newFile("smart.jpg");//给图片起名子
- FileOutputStreamoutStream=newFileOutputStream(file);//写出对象
- outStream.write(data);//写入
- outStream.close();//关闭流
- }
- }
- }
更多相关文章
- Android入门——页面跳转
- Android实现截屏,将截图文件保存到本地文件夹
- android 系统搜索框的使用及获取输入
- 安卓缓存-LruCache介绍
- thread in android ndk
- Android(安卓)为apk文件签名,增加修改系统时间等权限
- Android(安卓)四大组件 - bindService 的通信过程
- 百度地图开发 android App 数字签名(SHA1)获取办法
- 简单基站定位程序